* include/hbset.h
* include/set.ch
* source/pp/pptable.c
+ Added _SET_IDLEREPEAT = 101
* source/rtl/set.c
+ Added suport for SET( _SET_IDLEREPEAT ) - Default is .T.
* source/rtl/idle.c
- Removed HB_IDLE_RESET()
* Changed handling of Idle Process to default to REPEAT.
* tests/onidle.prg
- Removed call to HB_IDLE_RESET()
+ tests/testidle.prg
+ New test of Idle Blocks in default (REPEAT) mode and optional NON REPEAT mode.
* source/rtl/idle.c
+ Added HB_IDLE_RESET() and logic to reset Idle Processing upon such explicit request.
! If reoccuring processing of Idle Blocks is requested, hb_releaseCPU() is execusted upon completion of each cycle.
* tests/onidle.prg
+ Added HB_IDLE_RESET() to demonstrate explicit request for reoccuring processing of Idle Blocks.
* source/rtl/idle.c
* source/rtl/inkey.c
! Improved granularity of Idle Processing:
- GC is called only once per Wait Session.
- Single Idle Task is performed for each itteration of hb_idleState() but never more than once per Wait Session.
- ReleaseCPU() is guaranteed to be the only code executing for the remainder of every Wait Session.
/* Maurilio, Ryszard, Victor, could you please review and comment... */
* source/pp/ppcomp.c
* Corrected 1 compiler warning.
* source/pp/ppcore.c
+ Added s_bArray support logic to WorkDefine()
* source/rtl/idle.c
* Revered order of hb_gcCollectAll() and hb_releaseCPU();
* contrib/dot/pp.prg
! Corrected few pre-processor bugs.
! Corrected DOT multi-line support.
* contrib/dot/rp_dot.ch
+ Added Clipper and Harbour support for GET
* source/pp/ppcore.c
! Removed redundant line in md_strAt() whiched caused bug with tanslating within [] bracket expressions.
* source/compiler/harbour.sly
+ Added support for early macro of expansion declared symbol for simple macro expression within CodeBlock (Like Clipper).
* source/rtl/tgetint.prg
! Corrected creation of bSetGet if uVar == NIL, to avoid compile error:
"Code block contains both macro and declared symbol references".
* source/pp/ppcore.c
* Added parameter BOOL bRule to md_strAt() to differentiate between searching a Rule Text or an Expression.
/* [...] should be searched within Rule, but _not_ within an Expression. */
* source/pp/ppcore.c
* Fixed STATE_QUOT3 ([]) support in getExpReal() and added STATE_QUOT3 support to NextParm() NextName() and md_strAt()
/* Before this fix #define and #translate were activated within [] strings - Fixed!
Now strings delimiter conversion should be complete. */
* include/hberrors.h
+ Added: #define HB_COMP_ERR_BLOCK 47
* source/compiler/hbgenerr.c
+ Added Error: "Code block contains both macro and declared symbol references"
* source/compiler/harbour.c
* Made public: hb_compLocalGetPos() and hb_compStaticGetPos()
* source/compiler/harbour.slx
+ Added: char * hb_comp_SLX_LastBlock( BOOL bReset )
* source/compiler/harbour.sly
+ Added logic to support Early Expansions of Macro within CodeBlock unless parenthesized.
+ tests/tstblock.prg
+ New test of Early/Late expansion of Macros within CodeBlocks.
* source/compiler/cmdcheck.c
* utils/hbpp/hbpp.c
+ Added support for complex Command Line #defines
* source/pp/ppcore.c
* Renamed ParseDefine() to hb_pp_ParseDefine() and made it public.
* source/pp/ppcore.c
! Fixed droped redundant spaces in [] strings, by adding STATE_QUOTE3 to strotrim().
! Fixed conversion of string delimiters in getExpReal()
* include/hbexpra.c
* source/pp/pptable.c
! Excluded Ryszard changes using #if[n]def SIMPLEX from SimpLex version.
Ryszard code remains intact for Flex version (including 3 reported bugs).
* hb_slex.bc
+ Added -DSIMPLEX when compiling source/pp/pptable.c, source/compiler/expropta.c, and source/macro/macroa.c
/* This allow conditional exclusion of Ryszard changes for SimpLex version. */
/* Todo - have to do same in GNU make */
* makefile.bc
Added missing dependancy of source/rtl/tgetint.prg
* source/rtl/tgetint.prg
! Improved __GETA() - No longer uses slow function calls to traverse array.
bSetGet much faster because it no longer traverses base array every time bSetGet is evaluated,
because final array dimension is now compiled into the bSetGet :-)
- Removed no longer needed __GetAValue(
* tests/testread.prg
+ Added multi dimension GET test.