* 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()