* source/compiler/harbour.c
- Removed refrence to pFunc->iFunctionIndex.
* source/compiler/hbpcode.c
* Enhancements to hb_compStrongType()
* tests/testwarn.prg
+ Added code to demonstrate more warnings.
* include/hberrors.h
- Removed pFunctionCalls and iFunctionIndex members of _FUNC structure.
* harbour/source/compiler/harbour.c
! Fixed hb_compVariableAdd() to utilize parameter cValueType for Codeblock local variables, so that correct type is stored.
* harbour/source/compiler/harbour.y
! Fixed hb_compExprCBVarAdd( $<asExpr>0, $1, $2 ) to hb_compExprCBVarAdd( $<asExpr>0, $1, hb_comp_cVarType ) and
hb_compExprCBVarAdd( $<asExpr>0, $3, $4 ) to hb_compExprCBVarAdd( $<asExpr>0, $3, hb_comp_cVarType ) so that
correct type is passed.
+ Added hb_comp_cVarType = ' ' to reset declared type after BlockVar[s] PRIVATE and PUBLIC.
* harbour/source/compiler/hbpcode.c
* Minor corrections to hb_compStrongType()
* source/compiler/hvm.c
+ Added support for new PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE
+ Added void hb_vmPushOne( void ), void hb_vmPushZero( void ) and void hb_vmPushByte( BYTE )
* Optimized HB_P_ZERO by using hb_vmPushZero()
* source/compiler/harbour.c
- REMMED not used hb_compGenPushInteger()
* Optimized hb_compGenPushLong() to USE HB_P_ZERO, HB_P_ONE, HB_P_PUSHBBYTE, HB_P_PUSHBINT, or , HB_P_PUSHLONG as needed.
* Optimized few pairs of hb_compGenPCode1() to use hb_compGenPCode2() instead.
* source/compiler/genc.c
+ Added support for PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE
* source/compiler/hbpcode.c
+ Added hb_compGenPCode2( BYTE, BYTE )
* source/compiler/harbour.y
* Optimized few pairs of hb_compGenPCode1() to use hb_compGenPCode2() instead.
* source/include/hbpcode.h
+ Added PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE
* source/include/hbvm.h
+ Added:
extern void hb_vmPushOne( void ); /* pushes a 0 onto the stack */
extern void hb_vmPushZero( void ); /* pushes a 1 onto the stack */
extern void hb_vmPushByte( BYTE bNumber ); /* pushes a integer number onto the stack */
* include/hbcomp.h
- Removed #ifef of GenObj32