* source/compiler/hbgenerr.c
* source/pp/ppcomp.c
! Fixed reporting of line numbers on erros.
* source/pp/ppcore.c
* More support for [] as string delimiters.
* source/compiler/harbour.l
+ Added support for:
ELSIF [ some string ] ...
DO WHILE [ some string ] ...
WHILE [ some string ] ...
CASE [ some string ] ...
/* Strangly, Clipper chockes on elseif [...] */
* include/hbapi.h
* include/hbapifs.h
+ added descriptive comments, from source, to declarations of
multiple api calls
* rtl/trim.c
* hb_strRTrimLen - corrected descriptive comment
was "returns szText and the new length in lLen"
now "return length of szText ignoring trailing white space
(or true spaces)"
* source/pp/ppcore.c
! Fixed isExpress() to check last charcter of the expression and return false if it is one of these:
":/*+-%^=(<>". This fixed another problem reported by Brian Hays to do with the VO comaptibility #translates.
/* We still have to find, why was isExpress() called with only partial expression, this should be fixed. */
* makefile.bc
- Removed redundant -Iinclude from echo into make.tmp (Harbour.exe)
* source/compiler/hbgenerr.c
- Removed no longer needed int iLine
* source/pp/ppcore.c
! Fixed bug PP was not able to parse #command/translate if no space before "=>" like:
#translate CRLF=>Chr(13) + Chr(10)
* source/compiler/harbour.l
* source/compiler/harbour.y
+ Added support for _ProcReq_() - compile time function used to implement SET FORMAT TO and
SET PROCEDURE TO. Clipper implementation doesn't allow a run time function with this name, Harbour
will only intercept it as compile time function, if used at BOL.
As compile time function it only accepts a single "Literal", or "Literal + Literal".
* source/compiler/hbgenerr.c
* source/pp/ppcomp.c
! Fixed line numbering. Warnnings and Errors, should now report correct line numbers.
* source/pp/ppcomp.c
! Fixed missing CR at EOF of #include file, causing #line directive to be on same line with the next line in parrent file.
! Big Improvment of line numbering of #line directive - almost identical to Clipper - to be continued.
* makefile.bc
+ Added ppcomp.c and ppcore.c to list of harbour.exe dependencies.
* source/pp/ppcore.c
* source/compiler/harbour.y
! Corrected initialization of pFile->iLine to 1
* source/pp/ppcomp.c
! Fixed redundnant empty lines generation and line numbering.
source/compiler/harbour.c
* hb_compCompile() Added Clipper like message showing how many parse errors found.
* hb_compAutoOpen() added 2nd paramter pointer to bSkipGen of caller (hb_compCompile()).
Added logic to not "remember" hb_comp_bAnyWarning and hb_comp_iErrorCount from previous parsings.
* include/hbcomp.h
* Enclosed declarations of functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
source/compiler/harbour.y
* Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
* Changed rules for DO ... to add name of module to hb_comp_pAutoOpen linked list.
+ Added hb_compAutoOpen() - Parses the needed externals when -m not specified
- Defed out hb_compYACCMAIN() (#if 0) - no longer needed, moved logic into hb_compCompile() and hb_compAutoOpen()
source/compiler/harbour.l
+ Added #define YY_USER_ACTION ... to fix Flex problem with ^ (BOL RegExp)
* Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
source/compiler/harbour.c
* Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
* Modified hb_compCompile() to support future in-line nested compilation, and defed it out.
* Changed hb_compCompile() to call hb_compAutoOpen() for modules called in DO ... that are not defined in main prg.
! Completed -m support, by default directives in external opened modules will be avialable to subsequent externals.
this feature is defed out if strict compatibilty ise selected.
* include/hbpp.h
* source/compiler/harbour.c
* source/pp/ppcore.c
* Modified hb_pp_SetRules() to receive 2nd parameter BOOL hb_comp_bQuiet, since ppcore is part of PP.lib which is linked
into HBRUN.exe which does not include harbour.c where hb_comp_bQuiet is defined.
* source/compiler/harbour.l
! Fixed parse error on IF [...]
* source/vm/classes.c
Posted patch provided by JF
* source/rtl/tobject.prg
Posted missing file provided by JF
* source/rdd/dbfntx1.c
After this change we can create indexes. And they working with Clipper !
But this isn't optimized.
* Module initialization for other then GNU compilers
+ static ERRCODE hb_ntxPageKeyAdd( LPPAGEINFO pPage, PHB_ITEM pKey, int level)
+ static ERRCODE hb_ntxPageKeyInsert( LPPAGEINFO pPage, PHB_ITEM pKey, int pos )
+ static int hb_ntxItemCompare( PHB_ITEM pKey1, PHB_ITEM pKey2 )
+ static ERRCODE hb_ntxPageAddPageKeyAdd( LPPAGEINFO pPage, PHB_ITEM pKey, int level, int pos )