19990619-12:22 Ryszard Glab <rglab@imid.med.pl>

* include/hbsetup.h
 + added automatic definition of settings that can be used for OS specific code
   OS_UNIX_COMPATIBLE  -for UNIX like systems
   OS_DOS_COMPATIBLE -for DOS like systems
   
* source/rtl/console.c
 + added calls for fgets instead of gets for GCC on UNIX-es   
   TODO: check if this change can be applied on DOS also
 * changed CR/LF use to LF for GCC on UNIX-es
 
* source/rtl/dir.c
 * changed to use OS_UNIX_COMPATIBLE/OS_DOS_COMPATIBLE settings
 
19990619-10:42 Ryszard Glab <rglab@imid.med.pl>

* tests/working/Makefile
 * moved some files into BAD_PRG_SOURCES
 
* tests/working/testid.prg
 + added TODO comment because it core dumps if /dTEST is not passed
 
19990619-09:49 CET Patrick Mast
  * Updated build numbers

19990619-09:40 CET Patrick Mast
  * tests\working\hscript\hscript.prg
    removed line 150
    
19990618-21:50 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - genobj.c was moved to source/contrib
  * source/compiler/harbour.y
    - Added missing type overrides to OurMalloc() calls
  * tests/working/scroll.prg
    - Modified to use the preprocessor

19990618-20:55 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/dir.c
    - Corrected #if test GNU C on Unix/Linux test to use && ! instead of || !
      in order to force DJGPP to use DOS functions instead of Unix functions

19990619-00:52 Ryszard Glab <rglab@imid.med.pl>

* config/linux/gcc.cf
 * added default gcc library libm
 * added location of libm library (I have assumed /usr/lib)
 
* source/include/hbsetup.h
 + the order of static variables initialisation is not determined in 
   gcc on Linux. This requires the definition of HARBOUR_START_PROCEDURE
   The dafault is 'MAIN'

- tests/working/next.prg 
 - removed because it is contained in keywords.prg
 
* tests/working/Makefile
 -removed reference to next.prg
 

19990618-23:17 CET Patrick Mast
  * Release of Build #27
  * version.h, updated build version

19990618-19:39 CET Patrick Mast
  * tests\working\hscript\bld32exe.bat
    changed line 17 : echo ..\runner.obj >> b32.bc
    because runner.obj is not in tests\working\hscript but in tests\working

19990618-17:00 CET Victor Szel <info@szelvesz.hu>
  * Fixed some GCC warnings in:
    source/compiler/harbour.y
  * Some left _parc()/_parni()/_parnl() prefixed with hb_
    source/rtl/dir.c
    source/rtl/files.c
  * Fixed PADR(), PADL(), PADC() when called with a width
    less than the length of the string.
    Submitted by Matthew Hamilton <MHamilton@bunge.com.au>
    source/rtl/strings.c

19990618-13:40 Alexander Kresin
 updated:
 * source\hbpp\hbppmain.c
 * source\hbpp\hbpp.c
 * source\hbpp\table.c
  Fixed some problems with preprocessor

19990618-07:50 Ryszard Glab <rglab@imid.med.pl>

* source/compiler/harbour.y
 + added deallocation of used structures
 + added yy_strupr and yy_strdup functions to make sure that memory is
   properly allocated

* source/compiler/harbour.l
 + added declaration of yy_strupr and yy_strdup functions and changed
   calls for strupr and strdup to yy_strupr and yy_strdup respectively

* include/hbsetup.h
 + added operating system dependand settings

+ config/linux/
 + added new directory with GNU MAKE files for GCC on Linux
   You have to define:
   HB_ARCHITECTURE = linux
   HB_COMPILER = gcc

* source/hbpp/hbppint.c
 * added support for Watcom C/C++ compiler

+ source/hbpp/makefile.wat
 + makefile for Watcom C/C++ compiler

+ source/compiler/makefile.wat
 * changes to link hbpp library into Harbour executable

* source/rtl/console.c
* source/rtl/dir.c
* source/rtl/files.c
* source/rtl/set.c
 * changed files to make them compile with Watcom C/C++ and GCC on Linux
 * removed PATH_SEPARATOR and replaced it with OS_PATH_DELIMITER
   defined in hbsetup.h

* source/contrib/genobj.c
 * moved this file from source/tools since this is DOS specific code and
   it is not needed for Harbour

* source/tools/Makefile
 - removed reference to genobj.c file

* Harbour compiles fine on Linux now. However there is still some
  suspicious code in source/rtl/dir.c and source/rtl/files.c files.
  The runner.c is unsupported since it generates DOS specific code.

19990617-20:49 PST Ron Pinkas <Ron@Profit-Master.com>
  * compiler.h
    added member cType to struct VAR
  * harbour.y
    added { iVarScope = VS_MEMVAR; } to PRIVATE, PUBLIC, and PARAMETERS statements to avoid errounous error:
    "declaration follows executable statement"
    added: AliasExp '=' Expression Crlf { /* TODO */ GenPCode1( _POP ); }
    to statement definition to avoid parse error on M->Var = "Value" statments.
    the _POP will balance the stack but the assignment is not implemented yet.
    changed --iLine to iLine in yyerror() to correct errornous line numbers in parase error messages.
    added check for null pointer on few references to pVars->szName

  * hbpp.c, hbpmain.c, hbpint.c
    prefixed messages in all printf() with \n and postfixed with \n until modification to GenWarning() and GenError()

19990617-18:55 EDT David G. Holm <dholm@jsd-llc.com>
  * include/set.h
    - SET DEBUG is numeric, not logical
  * source/rtl/console.c
    - Added support for SET MARGIN
  * source/rtl/set.c
    - Added documentation
    - Converted HB_SET_DEBUG to numeric
    - Added limits of 16 and 4096 to HB_SET_TYPEAHEAD
  * tests/working/output.prg
    - Removed ADDITIVE from SET PRINTER TO OUTPUT
    - Added SET MARGIN TO 5

19990617-21:55 CET Eddie Runia
  * source/rtl/set.c
    __SETCENTURY in Symbol table instead of SETCENTURY
  * tests/working/hscript/hscript.prg
    Problem with comment after ;
    Comment moved to allow for compilation

19990617-13:00 EDT David G. Holm <dholm@jsd-llc.com>
  * doc/transfrm.txt
    - Updated to reflect use of SET DATE FORMAT and SET CENTURY for dates
    - Added question regarding behaviour difference between Harbour and
      Clipper for the @E date-related function
  * source/hbpp/hbppint.c
    - Removed ParseDefine("__HARBOUR__")
  * source/hbpp/table.c
    - Added __HARBOUR__ to aDefines table
  * source/rtl/environ.c
    - No #includes are allowed before the #ifdef __IBMCPP__ block
  * source/rtl/set.c
    - Renamed HB_SETCENTURY to HB___SETCENTURY
    - Eliminated HB_SETFIXED
  * tests/working/dates.prg
    - Converted HB_SETCENTURY() to __SETCENTURY()
  * tests/working/dates2.prg
    - Converted HB_SETCENTURY() to __SETCENTURY()
  * tests/working/empty.prg
    - Converted HB_SETCENTURY() to __SETCENTURY()
  * tests/working/teststr.prg
    - Converted HB_SETFIXED() to SET (_SET_SETFIXED)
  * tests/working/transfrm.prg
    - Converted HB_SETCENTURY() to __SETCENTURY()

Thu Jun 17 11:34:35 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

	* source/Makefile:
	* source/compiler/Makefile:
	* source/hbpp/Makefile:
	Now the hbpp preprocessor is compiled before the compiler, and it
	generates a library. No stand-alone preprocessor is generated. The
	compiler links against the new preprocessor library.

	* include/Makefile:
	* tests/working/Makefile:
	Updated the list of files.

	* include/compiler.h:
	* include/ctoharb.h:
	* include/dates.h:
	* include/error.api:
	* include/errorapi.h:
	* include/extend.h:
	* include/filesys.h:
	* include/gtapi.h:
	* include/hberrors.h:
	* include/hbsetup.h:
	* include/init.h:
	* include/itemapi.h:
	* include/pcode.h:
	* include/set.h:
	* include/types.h:
	* include/version.h:
	* source/compiler/fixflex.c:
	* source/compiler/genobj32.c:
	* source/compiler/harbour.l:
	* source/compiler/harbour.y:
	* source/hbpp/harb.h:
	* source/hbpp/hbpp.c:
	* source/rtl/asort.prg:
	* source/rtl/descend.c:
	* source/rtl/error.prg:
	* source/rtl/errorsys.prg:
	* source/rtl/hardcr.c:
	* source/rtl/itemapi.c:
	* source/rtl/mtran.c:
	* source/rtl/objfunc.prg:
	* source/rtl/tclass.prg:
	* source/tools/asciisum.c:
	* source/tools/ascpos.c:
	* source/tools/atdiff.c:
	* source/tools/chareven.c:
	* source/tools/charmix.c:
	* source/tools/charodd.c:
	* source/tools/chrcount.c:
	* source/tools/chrfirst.c:
	* source/tools/chrtotal.c:
	* source/tools/debug.c:
	* source/tools/hb_f.c:
	* source/tools/strasint.c:
	* source/tools/strcount.c:
	* source/tools/strcspn.c:
	* source/tools/strdiff.c:
	* source/tools/strexpan.c:
	* source/tools/stringp.prg:
	* source/tools/strleft.c:
	* source/tools/strpbrk.c:
	* source/tools/strright.c:
	* source/vm/hvm.c:
	* source/vm/initsymb.c:
	Made sure all *.{h,c,ch,api,prg,l,y} files under include/ and
	source/ have an RCS Id keyword.
	Got rid of the RCS Log keyword on several files; this keyword
	should never be placed in a source file.
	Made sure all *.h files have a proper include guard. If the file
	name is foo.h, the include guard is called FOO_H_, without a
	leading underscore, to comply with ANSI rules.

19990617-12:40 CET Eddie Runia
  * source/rtl/dir.c
    hb_chmod should be _chmod
  * tests/working/round.prg
    loop shortened to 100 (I thought the program has crashed, while testalling)

19990617-12:20 CET Eddie Runia
  * source/compiler/harbour.y
    GetLocalVarPos : OurMalloc( sizeof(PVAR) ) should be sizeof(VAR)

19990617-02:15 EDT David G. Holm <dholm@jsd-llc.com>
  * include/extend.api
    - Moved fixed memory functions to fm.api
  + include/fm.api
    - Fixed memory API functions (converts _x... to hb_x...)
  + include/item.api
    - Item API functions (converts _item... to hb_item..., etc.)

19990617-02:00 EDT David G. Holm <dholm@jsd-llc.com>
  All Extend API and GT API functions have been convert from _ to hb_
  * include/compiler.h
  * include/errorapi.h
  + include/extend.api
  * include/extend.h
  + include/gt.api
  * include/gtapi.h
  - include/harbclip.h
  * include/types.h
  * source/rtl/arrays.c
  * source/rtl/classes.c
  * source/rtl/codebloc.c
  * source/rtl/console.c
  * source/rtl/dates.c
  * source/rtl/descend.c
  * source/rtl/dir.c
  * source/rtl/environ.c
  * source/rtl/errorapi.c
  * source/rtl/extend.c
  * source/rtl/files.c
  * source/rtl/gtapi.c
  * source/rtl/hardcr.c
  * source/rtl/itemapi.c
  * source/rtl/math.c
  * source/rtl/mtran.c
  * source/rtl/set.c
  * source/rtl/strings.c
  * source/rtl/transfrm.c
  * source/runner/runner.c
  * source/tools/asciisum.c
  * source/tools/ascpos.c
  * source/tools/atdiff.c
  * source/tools/chareven.c
  * source/tools/charmix.c
  * source/tools/charodd.c
  * source/tools/chrcount.c
  * source/tools/chrfirst.c
  * source/tools/chrtotal.c
  * source/tools/datesx.c
  * source/tools/debug.c
  * source/tools/hb_f.c
  * source/tools/io.c
  * source/tools/mathx.c
  * source/tools/strcount.c
  * source/tools/strcspn.c
  * source/tools/strdiff.c
  * source/tools/strexpan.c
  * source/tools/stringsx.c
  * source/tools/strleft.c
  * source/tools/strpbrk.c
  * source/tools/strright.c
  * source/vm/dynsym.c
  * source/vm/hvm.c
  * tests/working/harbour.ini
  * tests/working/runner.c

19990617-00:10 EDT David G. Holm <dholm@jsd-llc.com>
  * include/extend.h
    - Finally noticed and removed the old Error API declarations

19990617-00:00 EDT David G. Holm <dholm@jsd-llc.com>
  * include/errorapi.h
    - Added "#include <extend.h>"
  * source/rtl/environ.c
    - Added "#include <errorapi.h>
    - Converted all _errFunctions to hb_errFunctions
  * source/rtl/math.c
    - Added missing _errFunction to hb_errFunction conversions

19990616-23:30 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - Added or corrected various include file dependencies
  * include/error.api
    - Moved all #defines to errorapi.h
    - Added "#include <errorapi.h>"
    - Added #defines to convert all _errFunctions to hb_errFunctions
  + include/errorapi.h
    - Added function declarations for all hb_errFunctions
    - Moved all #defines from error.api and errorapi.c
  * source/rtl/arrays.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/classes.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/dates.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/errorapi.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/math.c
    - Convert all _errFunctions to hb_errFunctions
    - Added ( char * ) override to _xgrab() call in HB_ROUND()
  * source/rtl/set.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/strings.c
    - Convert all _errFunctions to hb_errFunctions
  * source/rtl/transfrm.c
    - Convert all _errFunctions to hb_errFunctions
  * source/vm/hvm.c
    - Convert all _errFunctions to hb_errFunctions

19990616-22:50 EDT David G. Holm <dholm@jsd-llc.com>
  * source/hbpp/hbppint.c
    - Added ParseDefine( "__HARBOUR__" ) to Hbpp_init()
  * source/rtl/arrays.c
    - Added missing symbols to symbol table
  * source/rtl/console.c
    - Added missing symbols to symbol table
  * source/rtl/dates.c
    - Added symbol table
  * source/rtl/math.c
    - Added HARBOUR HB_ROUND() function
  * source/rtl/strings.c
    - Added missing symbols to symbol table
  * source/rtl/transfrm.c
    - Added symbol table
  * source/vm/initsymb.c
    - Added calls to Dates__InitSymbols() and Transfrm__InitSymbols()
  + tests/working/round.prg
    - New function to test ROUND() function uses OUTSTD() to allow
      easy checking of Harbour results against Clipper results

19990616-21:40 CET Eddie Runia
  * tests/working/dosshell.prg
    new version added

19990616-21:15 CET Matteo Baccan
  * makefile.vc
    correct updated version added
  * source/vm/dynsym.c
    NULL pointer assignment added
  * source/rtl/environ.c
    _WIN32 define added


19990616-13:45 EDT David G. Holm <dholm@jsd-llc.com>
  * source/hbpp/hbppint.c
    - Added extern declaration for strocpy()

19990616-11:30 CET Eddie Runia
  * source/rtl/console.c
    Eject should be __Eject of course
  * tests/working/dosshell.prg
    With preprocessed statements

19990616-13:12 Alexander Kresin
 updated:
 * source\compiler\harbour.y
  Added description of /p switch to PrintUsage()

19990616-11:19 Alexander Kresin
 updated:
 * source\hbpp\hbppmain.c
 * source\hbpp\hbppint.c
 * source\hbpp\hbpp.c
  Fixed problems with preprocessor, mentioned by David G. Holm

19990615-23:20 PST Ron Pinkas <Ron@Profit-Master.com>
  * compiler.h
    added member iUsed to struct VAR
  * hberrors.h
    added define of codeblock parameter not used warning
  * harbour.y
    removed PDECLARED_VAR struct definition
    removed code to maintain FunVars list
    added code to GetVarPos() to reflect use of declared variable
    added logic to FixReturns() and CodeBlockEnd() to generate warnings on non used decalred vaiables
    removed previous version of nonused declared variables warnings from FunDedf() and {Main}

19990615-23:45 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - Added tools\datesx, which is needed by runner
  * tests/working/runner.c
    - Added or corrected type overrides on 4 _xgrab() calls (for C++)
      Compiles on OS/2, but gives "unsuported pcode opcode: 104" when used

  * ChangeLog
    - Added comment to entry 19990615-12:30 EDT David G. Holm
      about renaming two hb_ functions in source/rtl/console.c
  * makefile.icc
    - Build component parts of Harbour.exe separately
  * source/hbpp/hbpp.c
    - Added #ifdef block for IBM C++ compiler
    - Added prototype for OpenInclude()
    - Increased size of expreal array in ConvertPatterns from 4 to 5,
      because it is being initialized from a zero terminated string
  * source/hbpp/hbppint.c
    - Added #ifdef block for IBM C++ compiler
  * source/rtl/console.c
    - I went overboard in tracking the printer position, because
      Clipper doesn't make any adjustments for control characters sent
      to the printer. But it does adjust the printer row and column when
      QOUT() output goes to the printer, which is what I had missed.
  * source/rtl/dates.c
    - Changed hb_seconds() to hb__seconds(), because IBM C++
      librarian can't distinguish between HARBOUR HB_SECONDS(void)
      and double hb_seconds(void)

19990616-08:00 WIB Andi Jahja
  + source\rtl\natmsg\msgia.c
    Language module for Indonesian languange
    ( First Asian <g> )

19990615-23:00 CET Felipe Coury
  + tests/working/hscript/bld32exe.bat; dir.hs; hb32.bat; hello.hs;
    hscript.prg; makehs.prg; makehtm.prg; multiply.hs readme.txt
    First release of hScript added

19990615-21:00 CET Jose Lalin / Eddie Runia
  + source/rtl/natmsg/msgbas.c
  * source/rtl/msgxxx.c
  * source/compiler/harbour.y
    VarId ArrayIndex ':' and ObjectData ArrayIndex ':' syntax was incorrect

19990615-12:30 EDT David G. Holm <dholm@jsd-llc.com>
  * source/compiler/makefile.dos
    - Integrated preprocessor into compiler
  * source\hbpp\hbpp.c
    - Added braces to avoid implicit else in ParseExpression()
  * source/rtl/console.c
    - Added HARBOUR HB_SETPOS()
    - Improved printer position tracking
    - Improved screen position tracking when not using GT API
    - Renamed hb_maxrow() to hb_max_row() and hb_maxcol() to hb_max_col(),
      because IBM C++ librarian can't distinguish between functions with
      the same name that differ only by the return argument.
  * source/rtl/files.c
    - convert_create_flags no longer returns a value, so declare as void
  * source/rtl/set.c
    - Logical SET values can now use "ON" for .T. and "OFF" for .F.
  * source/rtl/strcmp.c
    - hb_stricmp does a case-insensitive compare even when not using a
      library function.
  * tests/working/output.prg
    - Converted to use the preprocessor

19990615-10:38 Alexander Kresin
 removed:
 - source\hbpp\harb.c
 added:
 + source\hbpp\hbppmain.c
 + source\hbpp\hbppint.c
 updated:
 * source\hbpp\hbpp.c
 * source\hbpp\table.c
 * source\hbpp\makefile
 * source\hbpp\makefile.b32
 * source\hbpp\makefile.b16
 * source\hbpp\buildgcc.bat
 * source\compiler\harbour.l
 * source\compiler\harbour.y
 * makefile.b32
 This is the latest preprocessor version, it may be build now as
 standalone or as integrated with compiler.

19990615-08:30 Ryszard Glab <rglab@imid.med.pl>

* source/compiler/harbour.y
  * added missing error message

* source/compiler/harbour.l
  * removed printf introducced for debugging purpose

19990615-07:00 Ryszard Glab <rglab@imid.med.pl>

* source/compiler/harbour.y
 * removed bug in CodeblockEnd (the names of local variables shoudn't
   be released here)

* source/compiler/harbour.l
 * corrected line continnuation logic

* include/hberrors.h
 + added new error message

* include/hbsetup.h
 * removed unneccessary '*/' defined for Watcom compiler

+ broken/linecont.prg
 + new file to test if linne continnuation ';' is handled correctly

19990614-15:40 EDT David G. Holm <dholm@jsd-llc.com>
  * include/extend.h
    - Added declaration for hb_stricmp()
  * include/version.h
    - Changed revision code to "b"
  * source/rtl/classes.c
    - Now uses hb_stricmp() instead of stricmp()
  * source/rtl/console.c
    - Now uses hb_stricmp() instead of stricmp()
  * source/rtl/dates.c
    - Fixed several bugs reported by Jose Lalin, who included
      the appropriate fix for most of them.
  * source/rtl/files.c
    - Removed test code that was accidentally included in CVS
    - Added default #define for O_BINARY
  * source/rtl/set.c
    - Now uses hb_stricmp() instead of stricmp()
    - Added default #define for O_BINARY
  * source/rtl/strcmp.c
    - Added new hb_stricmp() function, because stricmp() is not
      an ANSI C function. If stricmp() exists, it is used, else
      if strcasecmp exists, then it is used, otherwise use byte
      by byte comparision.
  * tests/working/dates3.prg
    - Added more test cases

19990614 11:50 CET Eddie Runia
  * source/compiler/harbour.y
    help text changed

19990613 23:23 CET Eddie Runia
  * source/rtl/natmsg/msggal.c
    forgot this one
  * tests/working/cmphello.prg
    Hm, I little bit quick this evening forgot the != 0 part :-)

19990613 23:15 CET Eddie Runia
  + source/rtl/natmsg/msg???.c
    more languages added.
  * source/rtl/natxxx.c
    id.

19990613 23:00 CET Eddie Runia
  * source/rtl/environ.c
    __Run() added for Borland and DJGPP
  + tests/working/dosshell.prg
    Only for DOS, OS/2 & Windows
  + tests/working/cmphello.prg
    This file compiles hello. Also usuable for Linux / Unix, if the system()
    command functions on their compilers :-)

19990613 16:35 CET Eddie Runia
  * tests/working/strip.prg; tests/working/inherit.prg;
    tests/working/dynobj.prg
    Were also not transmitted.

19990613 15:30 CET Eddie Runia
  * source/tools/debug.c; source/tools/stringp.prg
    Changes 1990612 08:00 were reverted ??

19990613 14:30 CET Eddie Runia
  * source/rtl/arrays.c; source/rtl/classes.c; source/rtl/files.c;
    source/rtl/console.c; source/rtl/dir.c; source/rtl/environ.c;
    source/rtl/math.c; source/rtl/set.c; source/rtl/strings.c
    InitSymbols added
  * source/rtl/transfrm.c
    Warnings eliminated
  * source/vm/initsymb.c
    calls to RTL functions added
  * tests/working/run_exp.h
    removed unnecessary references and sort alphabetically

19990612 08:30 CET Matthew Hamilton
  * tests/working/inifiles.prg
    with ReadBool and WriteBool

19990612 10:57 PST Ron Pinkas
   * source/compiler/harbour.y
        Added check on non used variables to be done at the end of source file so last function will be tested too.

19990612-18:55 CET Eddie Runia
  * source/rtl/files.c
    One byte more allocated for fReadStr()

19990612-17:00 CET Matthew Hamilton
  * source/rtl/strings.c
    Extended syntax for alltrim and rtrim

19990612-14:10 CET Eddie Runia
  * source/rtl/dir.c
    month started with 0 (Jan). Harbour months start with 1.
  * tests/working/dirtest.prg
    output sorted alphabetically and case insensitive.

19990612-13:45 CET Eddie Runia
  * source/rtl/files.c
    read-only file creation resolved. The permission should be passed as
    the third parameter to open.

19990612-11:22 CET Patrick Mast
  * Release of Build #26
  * version.h, updated build version
  + Included WhatsNew.txt

19990612-08:30 CET Jose Lalin / Eddie Runia
   * tests/working/testcgi.prg
     New version uploaded.
     ER : Changed HB_File -> File and Functions.cfm -> Function.cfm
   + tests/working/list.txt, function.cfm
     Referenced files added

19990612-08:00 CET Eddie Runia
   * tests/working/debugtst.prg, tests/working/clasinit.prg,
   * tests/working/funcarr.prg, tests/working/objarr.prg,
   * tests/working/objasign.prg
     Reference to HBDebug() renamed to Debug()
   * tests/working/run_exp.h, tests/working/runner.c
     all reference now correct
   * source/tools/debug.c
     HB_Static -> HB___Static
   * source/tools/stringp.prg
     HBDebug() renamed to Debug()


Fri Jun 11 1999 19:35 PST Ron Pinkas
   * source/compiler/harbour.y
        Moved code to check non used declared variable from GenReturn() to FunDef()
        Since Clipper function may have multiple RETURN statements

Fri Jun 11 19:14:22 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/Makefile:
        * include/set.h:
        * source/compiler/harbour.y:
        * source/hbpp/harb.h:
        * source/hbpp/hbpp.c:
        * source/rtl/arrays.c:
        * source/rtl/classes.c:
        * source/rtl/console.c:
        * source/rtl/dates.c:
        * source/rtl/descend.c:
        * source/rtl/dir.c:
        * source/rtl/environ.c:
        * source/rtl/files.c:
        * source/rtl/hardcr.c:
        * source/rtl/math.c:
        * source/rtl/mtran.c:
        * source/rtl/set.c:
        * source/rtl/strings.c:
        * source/rtl/transfrm.c:
        * source/runner/run_exp.h:
        * source/runner/runner.c:
        * source/tools/asciisum.c:
        * source/tools/ascpos.c:
        * source/tools/atdiff.c:
        * source/tools/chareven.c:
        * source/tools/charmix.c:
        * source/tools/charodd.c:
        * source/tools/chrcount.c:
        * source/tools/chrfirst.c:
        * source/tools/chrtotal.c:
        * source/tools/datesx.c:
        * source/tools/debug.c:
        * source/tools/hb_f.c:
        * source/tools/io.c:
        * source/tools/mathx.c:
        * source/tools/strcount.c:
        * source/tools/strcspn.c:
        * source/tools/strdiff.c:
        * source/tools/strexpan.c:
        * source/tools/stringsx.c:
        * source/tools/strleft.c:
        * source/tools/strpbrk.c:
        * source/tools/strright.c:
        * source/vm/dynsym.c:
        * source/vm/hvm.c:
        * source/vm/initsymb.c:
        * tests/working/Makefile:
        * tests/working/dates.prg:
        * tests/working/dates2.prg:
        * tests/working/empty.prg:
        * tests/working/filexist.prg:
        * tests/working/inifiles.prg:
        * tests/working/next.prg:
        * tests/working/test_all.prg:
        * tests/working/teststr.prg:
        * tests/working/transfrm.prg:
        When the compiler sees a function called FOO, it generates a call
        to HB_FOO. This meant updating the code generation (with the help
        of Eddie Runia) and updating all HARBOUR functions to prepend an
        HB_ to each of them. I also made sure all of them where declared
        in uppercase and had the signature HARBOUR HB_FOO(void).
        I may have missed something. In particular, test testhbf.prg does
        not work, but I wanted to commit this change anyway.

Fri Jun 11 17:11:09 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * config/bin.cf:
        * config/dir.cf:
        * config/global.cf:
        * config/install.cf:
        * config/lib.cf:
        * config/rules.cf:
        * config/test.cf:
        * config/dos/dir.cf:
        * config/dos/djgpp.cf:
        * config/dos/global.cf:
        * config/dos/install.cf:
        * config/win32/dir.cf:
        * config/win32/gcc.cf:
        * config/win32/global.cf:
        * config/win32/install.cf:
        * config/win32/msvc.cf:
        * config/win32/rules.cf:
        Reorganized things in an attempt to make it clearer how to support
        different platforms and compilers. Also added as much support as I
        could for running the GNU-make build system under plain
        COMMAND.COM (DOS and Win95), not only under bash.

19990611-17:00 CET Matthew Hamiltion
  * tests/working/inifiles.prg
    new version installed

19990610-23:40 EDT David G. Holm <dholm@jsd-llc.com>
  * include/fileio.ch
    - Corrected $Id: header
  * include/filesys.api
    - Corrected $Id: header
  * include/filesys.h
    - Corrected $Id: header

19990610-23:35 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - Added some missing source files
  * source/rtl/files.c
    - Put back '#include <direct.h>' for __WATCOM__, '#include <dir.h>'
      for __BORLANDC__, and '#include <direct.h>' for __IBMCPP__, after
      removing them earlier while removing '#include <dirent.h>', which
      isn't needed, because the DIRECTORY() function is in a separate
      source file. The reason that I thought it was safe to remove them
      was that I *thought* that I had recompiled with IBMCPP after I
      recompiled with DJGPP, but it turned out I hadn't. I'm hoping that
      I caught it before anybody extracted the bad version from CVS.

19990610-22:35 EDT David G. Holm <dholm@jsd-llc.com>
  + include/fileio.ch
    - File API related flags
  + include/filesys.api
    - Converts from _fs... functions to hb_fs... functions
  + include/filesys.h
    - Declares all hb_fs... functions
  * source/compiler/harbour.y
    - Added missing type override to OurMalloc() call in LoopStart()
  * source/rtl/files.c
    - Added support for IBM C++ compiler for OS/2
    - All HARBOUR functions must have a void argument list
    - Changed '#include <extern.h>' to '#include <filesys.h>'
    - Changed all _fs... functions to hb_fs... functions
    - Changed hb_fsCreate to use open() instead of creat()
    - Corrected and/or added last_error handling in all hb_fs... functions
    - Corrected return parameter handling in a few hb_fs and HARBOUR functions
  * source/tools/hb_f.c
    - Removed extern declarations for _fs... functions
    - Added '#include <filesys.api>'
    - Added two missing type overrides on _xgrab() calls in HB_FUSE()

19990610-18:05 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b16
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * makefile.b31
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * makefile.b32
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * makefile.icc
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * makefile.vc
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * config/c.cf
    - Remove $(MV) command following $(YACC) command
  * source/compiler/harbour.l
    - Changed '#include "y_tab.h"' to '#include "harboury.h"'
  * source/compiler/makefile.dos
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'
  * source/compiler/makefile.wat
    - Changed all 'y_tab' to 'harboury'
    - Changed all 'lexyy' to 'harbourl'

19990610-11:40 EDT David G. Holm <dholm@jsd-llc.com>
  + tests/working/makerunr.dos
    - New make file to build RUNNER.EXE using DJGPP
  * tests/working/runner.c
    - Added 'static' to several forward declarations
  + tests/working/runrdos.bat
    - New batch file to build RUNNER.EXE using DJGPP

19990610-09:30 CET Patrick Mast (Changes made by Jose Lalin)
  * source/rtl/asort.prg
    Resloved bug (Changed line 28 )

19990610-10:30 Alexander Kresin ( files posted by Marek Horodyski )
  + source/rtl/natmsg/msgpl852.c
  + source/rtl/natmsg/msgplmaz.c
    National language message files for Polish

19990609-12:55 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/files.c
    - Set _fmode to O_BINARY before using creat(),
      then restore to previous value afterwards
  * source/tools/asciisum.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/ascpos.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/atdiff.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/chareven.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/charmix.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/charodd.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/chrcount.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/chrfirst.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/chrtotal.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/hb_f.c
    - HARBOUR function names must be in upper case
  * source/tools/strcount.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strcspn.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strdiff.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strexpan.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strleft.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strpbrk.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * source/tools/strright.c
    - HARBOUR function names must be in upper case
    - HARBOUR functions must have a void argument list
  * tests/working/spawn2.prg
    - Added //NOTEST
  * tests/working/test_all.prg
    - Use HB_FILE instead of FILE
    - Made compiler independent
    - Added restart capability
    - Renamed created batch file to TESTALL.BAT, so that it can be run
      without having to include the .BAT extenstion.

19990609-11:25 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/set.c
    - Removed "+ 1" in setting y_stop to default stop point, because it
      caused _xgrab to allocate 1 byte too few when year was at end.
  * tests/working/dates.prg
    - Convert HB_SETCENTURY() test block to function and call it twice:
      Once with date format "MM/DD/YYYY" and once with "YYYY/MM/DD".

19990608-13:00 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/files.c
    - Changed "#if" for "#include <mingw32/share.h>" from "#if defined(
      __GCC__) && !defined(__DJGPP__)" to just "#if defined(__CYGNUS__)"
  * source/rtl/set.c
    - Moved "#include <sys/stat.h>" outside "#if defined(__GCC__) ||
      defined(__DJGPP__)" block, so that it is included for all compilers.
  * source/rtl/strcmp.c
    Added braces to "if( lLenFirst != lLenSecond ) /* Both empty ? */"
    block to avoid an implicit else warning for the else clause for the
    "if( hb_set.HB_SET_EXACT || bForceExact )" block.
  * source/rtl/natmsg/msghu.c
    Removed extra "/*" from inside "TODO:" comment block.

19990608-20:00 Alexander Kresin
 Implemented: #command, #xcommand, #translate, #xtranslate .
 Some functions rewritten for a better functionality and readability.
 Fixed some bugs.
  Updated:
   * source/hbpp/hbpp.c
   * source/hbpp/harb.c
   * source/hbpp/table.c
  Removed:
   - source/hbpp/a.prg
   - source/hbpp/c.prg
   - source/hbpp/example.ch
   - source/hbpp/exam2.ch

Tue Jun 08 09:22:40 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>
        * source/rtl/set.c (open_handle):
        Misplaced parenthesis when callin open() caused S_IWRITE to never
        be seen by open().

19990608-13:25 CET Eddie Runia
   * source/vm/initsymb.c
     SECONDS added
   * tests/working/runner.c
     _FILEs removed.
   * tests/working/run_exp.h
     HB_SETFIXED added

19990608-11:45 CET Eddie Runia
   * source/tools/debug.c
     even though it makes no difference hb_arrayClone is used in statics(),
     since it will no longer allow modification of the static table
   * source/rtl/classes.c
     class wrap bug eliminated
   * source/rtl/files.c; source/rtl/set.c
     temporary patches with regard to sys/stat.h removed

Mon Jun 07 20:42:04 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * config/dir.cf:
        * config/global.cf:
        * config/install.cf:
        Made a mistake in my previous commit. This one works.

Mon Jun 07 20:20:32 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>
        * config/bin.cf:
        * config/c.cf:
        * config/dir.cf:
        * config/global.cf:
        * config/install.cf:
        * config/lib.cf:
        * config/test.cf:
        * config/win32/gcc.cf:
        * config/win32/global.cf:
        * config/win32/msvc.cf:
        * config/win32/rules.cf:
        Updated rules so they work under WinNT CMD.EXE without any Unix
        utilities installed.

19990607-19:45 EDT David G. Holm <dholm@jsd-llc.com>
  * include/extend.h
    - Moved "#include <limits.h>" to include/types.h
    - Removed "#define FILE" and "#undef FILE", which are no longer
      needed, because HARBOUR FILE() was renamed to HARBOUR HB_FILE()
      some time ago.
  * include/types.h
    - Moved "#include <limits.h>" from include/extend.h in order to
      avoid having to require that extend.h be included before set.h
  * source/rtl/dates.c
    - HARBOUR SECONDS() and support module hb_seconds() courtesy of
      Jose Lalin <dezac@corevia.com>. I removed the use of clock()
      from hb_time(), because clock() returns the number of clock
      ticks since the program started, which has no relationship to
      when the seconds of the real time clock roll over. This means
      that SECONDS() will always return whole seconds instead of
      seconds and hundredths. I also provided an alternate hb_seconds
      implementation for DOS platforms using gettime() instead of
      time() and localtime(), because gettime() includes 1/100ths.
  * source/rtl/files.c
    - Don't "#include <mingw32/share.h>" if compiling with DJGPP.
  + tests/working/seconds.prg
    - New test program for SECONDS().

19990607-20:30 CET Eddie Runia
   * makefile.b32
     change little bug (hb.c)

Mon Jun 07 12:58:17 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * source/hbpp/Makefile:
        * source/hbpp/harb.c:
        * source/hbpp/harb.h:
        * source/hbpp/hbpp.c:
        * source/hbpp/table.c:
        Added a GNU-make Makefile to this directory.
        Solved portability problems under gcc.
        Got rid of a few warnings and unused variables.

        * source/rtl/msgxxx.c:
        This file includes the correct message file based on the value of
        HB_LANGUAGE, whose default is UK.

        * source/rtl/classes.c:
        * source/rtl/console.c:
        * source/rtl/dir.c:
        * source/rtl/files.c:
        * source/rtl/set.c:
        Solved portability problems under gcc.
        Got rid of a few warnings and unused variables.

        * source/rtl/dir.c:
        This file had definite bugs, see difference between r1.4 and r1.3
        for more details.

        * source/rtl/natmsg/msgdut.c:
        * source/rtl/natmsg/msggal.c:
        * source/rtl/natmsg/msgger.c:
        * source/rtl/natmsg/msghu.c:
        * source/rtl/natmsg/msgpor.c:
        * source/rtl/natmsg/msgr1251.c:
        * source/rtl/natmsg/msgru866.c:
        * source/rtl/natmsg/msgspa.c:
        * source/rtl/natmsg/msguk.c:
        Added Id keywords.

        * config/bin.cf:
        * config/global.cf:
        * config/header.cf:
        * config/lib.cf:
        * config/prg.cf:
        * config/test.cf:
        * config/win32/rules.cf:
        Use GRANDP to refer to ../../ and change environment variables to
        start with a HB_.

        * config/win32/rules.cf:
        Added a -I$(TOP) to the list of paths for included files in the
        rule to compile a PRG file with Harbour.

        * include/Makefile:
        * source/Makefile:
        * source/rtl/Makefile:
        * source/tools/Makefile:
        * tests/working/Makefile:
        Updated the file list.

19990607-15:15 CET Matthew Hamilton
  * tests/working/inifiles.prg

19990607-14:50 CET Eddie Runia
  * source/vm/hvm.c
    Unreleased error block

19990607-12:50 CET Eddie Runia
  * makefile.b32, build32.bat
    changed to split the terminal driver into seperate makefile for Windows
    support
  + terminal.b32
    split terminal driver
  * tests/working/bld32w.bat
    windows build file uses echo now

19990607-03:05 PST Ron Pinkas
  * include/hberrors.h
    added WARN_VAR_NOT_USED
  * source/compiler/harbour.y
    added warning message "Variable \'%s\' declared but not used in function: %s"
    added linked list FunVars to record the usage of declared variables
    added logic to maintain FunVars
    added logic to check usage as per FunVars in GenReturn()

19990607-09:40 Alexander Kresin
  + source/rtl/natmsg/msgru866.c
  + source/rtl/natmsg/msgr1251.c
    National language message files for Russian

19990606-16:42 PST Ron Pinkas
  * include/hberrors.h
    added define WARN_AMBIGUOUS_VAR 1
    added declaration for new function GenWarning()
  * source/compiler/harbour.y
    added _szWarnings[] to include parse warning messages
    added function GenWarning()
    added /w compiler switch to enable warnings
    added warning message for ambiguous vars

19990606-20:20 CET Victor Szel

  * source/rtl/dir.c -
    HB_CHARUPPER() parameters were wrong.
    HB_CHARUPPER() converted to toupper()
    The attribute parameter conversion to uppercase was buggy.

19990606-15:20 CET Eddie Runia
  * source/compiler/harbour.y
    - <object>:<data> <assignment> <value> is now functioning !
      where <assignment> is +=, -=, *=, /=, %=, ^=
      and increment / decrement for <object>:<data>
  + tests/working/objasign.prg
    test program used

19990606-13:50 CET Eddie Runia
  * source/rtl/errorapi.c
    _ErrNew()     stack.Return itself was returned instead of a copy.
    _ErrRelease() error object is released
  * source/rtl/classes.c
    SetData() & SetClassData() return the value set
  * source/compiler/harbour.y
    - <object>:<data> := <value> can now be used inside expressions (codeblocks)
    - MessageFix() has been added to fix the generated message in case of
                 assignments
    - type of ObjectData is now a string containing the (last) message.
      global _lMessageFix will contain a pointer to the location which should
      be fixed.
  * tests/working/inherit.prg
    test program for 'enhanced' syntax.

19990606-11:00 CET Eddie Runia
  * source/rtl/arrays.c; source/vm/initsymb.c; tests/working/run_exp.h
    Arrays converted to init symbols

19990606-10:15 CET Jose Lalin (upload Eddie Runia)
  + source/rtl/hardcr.c; source/rtl/mtran.c
    new !
  * source/vm/initsymb.c
    added initsymbols call
  * makefile.*
    files added

19990605-20:05 EST Les. Griffith
  * some fixes to dir.c for gcc and suggestions by Victor Szel
    need replacement for non gcc supported functions ltoa() and strrev()

19990606-00:30 CET Eddie Runia
  * tests/working/hardcr.prg; tests/working/mtran.prg
    Uploaded. Matching .C untested and missing for now.
    Just wanted #100 & #101 in !

19990605-11:12 EST Les. Griffith
  * removed DIRECTORY() from files.c
  * added rtl\dir.c
  * added tests working dirtest.prg
  * changed makefile.b32 to deal with dir.c dir.obj

19990604-16:20 CET Eddie Runia
  * source/vm/initsymb.c; tests/working/run_exp.h
    CDOW/ CMONTH were missing + Removal duplicate symbols from run_exp

19990604-15:30 CET Patrick Mast
  * Release of Build #25

19990604-14:14 CET Patrick Mast
  * source/rtl/set.c
    Removed #include <sys\stat.h>
  * source/rtl/files.c
    Removed #include <sys\stat.h>
  * source/compiler/harbour.y
    Put in the build Nr.

19990604-14:24 CET Victor Szel (upload Eddie Runia)
  + source/rtl/natmsg/msghu.c
    National language message file for Hungarian

19990604-13:56 CET Thomas Braun (upload Eddie Runia)
  + source/rtl/natmsg/msgger.c
    National language message file for German

19990604-11:50 CET Eddie Runia
  * source/compiler/harbour.y
    support for the following syntax added :
    <object>:<data>[<index>] <assignment> <value>
    <object>:<method>(<param>)[<index>] <assignment> <value>

    and increment / decrement for <function>(<param>)[<index>],
      <object>:<data>[<index>] and <object>:<method>(<param>)[<index>]
  * source/rtl/natmsg/msgdut.c
      Sunday is the first day ofcourse
  + tests/working/objarr.prg
      tests for object array syntax
  * tests/working/funcarr.prg
      tests for function array syntax (inc/dec added)

19990604-23:15 EDT David G. Holm <dholm@jsd-llc.com>
  + include/version.h
    - New file to specify version info. A future revision will be
      to specify where to find the version information, so that it
      may be pulled from other modules and/or the CVS.
  * source/rtl/environ.c
    - Modified HARBOUR OS() function to work with DJGPP.
    - Modified HARBOUR VERSION() function to format the version info
      similar to how Clipper does it (version, build, and date).
  * source/rtl/set.c
    - Added #include <unistd.h> for DJGPP.
  * tests/working/makefile.dos
    - Added compiler and library to the PRG to C dependency.
  + tests/working/version.prg
    - Added new module to test the VERSION function.

19990604-22:07 EST Les. Griffith
  added logic for msguk.c and msguk.obj to makefile.b32

19990604-21:50 EDT David G. Holm <dholm@jsd-llc.com>
  * builddos.bat
    - Pass command line arguments to make processor, so that we can build and
      clean in one step by running "BUILDDOS ALL CLEAN" instead of having to
      modify the builddos batch file.

19990604-21:50 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - Added new Harbour modules
  * source/rtl/classes.c
    - C++ requires functions with no arguments to be protyped as void
  * source/rtl/dates.c
    - C++ requires that arguments be prototyped (hb_cmonth and hb_cdow)
  * source/vm/initsymb.c
    - C++ needs prototypes for external initialization functions

19990604-20:20 EDT David G. Holm <dholm@jsd-llc.com>
  Thanks go to Jose Lalin <dezac@corevia.com> for CDOW() and CMONTH() (and
  their support functions), msggal.c, msgspa.c, and msguk.c and cdow.prg,
  to Felipe G. Coury <fcoury@flexsys-ci.com> for msgpor.c, and to Eddie
  Runia <runia@solair1.inter.NL.net> for msgdut.c
  * makefile.dos
    - Added source/rtl/natmsg
  * source/rtl/console.c
    - Separated screen and printer coordinates
    - Moved HARBOUR ROW() and HARBOUR COL() from gtapi.c
    - Added rudimentary screen positioning when not using the GT API
  * source/rtl/dates.c
    - Added HARBOUR CDOW(), HARBOUR CMONTH(), and support functions
  * source/rtl/gtapi.c
    - Moved HARBOUR ROW() and HARBOUR COL() to console.c
  + source/rtl/natmsg/makefile.dos
    - New DJGPP makefile for national language message files
      Note: Only msguk goes into the library
  + source/rtl/natmsg/msgdut.c
    - National language message file for Dutch
  + source/rtl/natmsg/msggal.c
    - National language message file for Galician
  + source/rtl/natmsg/msgpor.c
    - National language message file for Portugese
  + source/rtl/natmsg/msgspa.c
    - National language message file for Spanish
  + source/rtl/natmsg/msguk.c
    - National language message file for English
  + tests/working/cdow.prg
    - Test program for CDOW() and CMONTH()

19990605-00:22 CET Eddie Runia
  * tests/broken/exittest.prg; tests/broken/codebloc.prg
    removed, since they work !
  * tests/working/exittest.prg; tests/working/codebl.prg
    added (renamed codebloc to avoid conflict)

19990605-00:00 CET Eddie Runia
  * tests/working/runner.c
    PITEM -> PHB_ITEM

19990604-17:35 EDT David G. Holm <dholm@jsd-llc.com>
  * include/hbsetup.h
    - Added USE_GTAPI, which defaults to NOT being defined

19990604-17:00 EDT David G. Holm <dholm@jsd-llc.com>
  In each of the following modules, all occurrences of ITEM and PITEM
  were changed to HB_ITEM and PHB_ITEM. Any additional changes are
  listed following the applicable modules:
  * include/ctoharb.h
  * include/extend.h
  * include/itemapi.h
    - Also added #define ITEM PHB_ITEM
  * source/rtl/arrays.c
  * source/rtl/classes.c
  * source/rtl/codebloc.c
  * source/rtl/console.c
  * source/rtl/dates.c
  * source/rtl/descend.c
  * source/rtl/errorapi.c
  * source/rtl/extend.c
  * source/rtl/files.c
  * source/rtl/itemapi.c
  * source/rtl/math.c
  * source/rtl/set.c
  * source/rtl/strcmp.c
  * source/rtl/strings.c
  * source/rtl/transfrm.c
  * source/tools/debug.c
  * source/tools/hb_f.c
  * source/tools/io.c
  * source/tools/stringsx.c
  * source/vm/dynsym.c
  * source/vm/hvm.c

19990604-13:05 EDT David G. Holm <dholm@jsd-llc.com>
  * source/vm/hvm.c
    - Corrected ForTest() to use the correct decimal count

19990604-12:35 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/dates.c
    - Corrected HARBOUR DOW() to use _retni() instead of _retnl()

19990604-12:30 EDT David G. Holm <dholm@jsd-llc.com>
  * source/vm/hvm.c
    - Corrected HARBOUR ERRORLEVEL() to not change the error level if
      it is called with no parameters.

19990604-18:05 CET Jose Lalin (upload Eddie Runia)
  * makefile.*
    descend added
  * source/rtl/descend.c; tests/working/descend.prg; source/vm/initsymb.c
    descend added

19990604-12:00 EDT David G. Holm <dholm@jsd-llc.com>
  * build31.bat
    - Removed the non-portable fully qualified path that somebody added
      to the make command instead of adding to their PATH statement.

19990604-17:15 CET Eddie Runia
  * source/compiler/harbour.y; source/vm/hvm.c; include/pcode.h;
    tests/working/funcarr.prg
    Syntax for :
    <function>[<arrayindex>] <assignment> <value> added

19990604-11:45 CET Eddie Runia
  * source/rtl/classes.c
    _GetClassName() called by ClassName()

19990603-00:00 PST Ron Pinkas
  * hvm.c
    - Reverted VitualMachine() to use case switch rather than direct dynamic call for processing pcodes,
      since such optimization already done by c compiler.

19990604-02:22 Ryszard Glab <rglab@imid.med.pl>

* source/compiler/harbour.y
 * corrected "unmatched END" error if BEGIN/END SEQUENCE was used
 + LOOP now loops to the begginig of FOR/NEXT or WHILE statement
 + EXIT now exits from FOR/NEXT or WHILE statement

* source/compiler/harbour.l
 * corrected support for the following keywords:
   IF, IIF (90 % compatible with Clipper), IN, INCLUDE, INIT, LOCAL, LOOP

* source/vm/hvm.c
 local variables passed by reference in a codeblock are handled
 correctly now

* include/hberrors.h
 + added new error message

* tests/working/keywords.prg
 + added some new keywords for compatibility testing

+ tests/working/keywords.ch
 + new file for INCLUDE testing

+ doc/codebloc.txt
 + new file with a short description of a codeblock implementation


19990603-19:00 EDT David G. Holm <dholm@jsd-llc.com>
  Thanks go to Ryszard Glab <rglab@imid.med.pl>
  * makefile.dos
    - Added -r to two make lines for source/compiler

19990604-00:25 CET Eddie Runia
  * source/rtl/classes.c
    With _GetClassName(); optimized; more comments; more clean-up

19990603-21:50 CET Eddie Runia
  * source/rtl/classes.c; tests/working/run_exp.h
    OBJFUNC.PRG added to init symbols scheme.

19990603-20:20 CET Eddie Runia
  * source/rtl/classes.c; source/vm/initsymb.c; tests/working/run_exp.h
    First implementation of init symbols scheme.

19990603-14:00 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.dos
    - Even with the -y in the source/compiler/makefile.dos, when I
      used builddos, which uses makefile.dos, instead of a temporary
      replacement batch file that I used before I figured out why I
      was getting bad command errors when running builddos (it turned
      out that I needed to add the DJGPP\bin directory to the path in
      C:\WINNT\SYSTEM32\AUTOEXEC.NT), it moved y_tab.c to harbour.c!
      So I converted everything in makefile.dos from upper case to
      lower case and it stopped doing that. So i also added the missing
      source/tools directory, so that everything gets build.
  * source/compiler/harbour.l
    - Changed yylval.string = ')'; to yylval.string = strdup( ")" );
    - Changed yylval.string = ']'; to yylval.string = strdup( "]" );

19990603-13:30 EDT David G. Holm <dholm@jsd-llc.com>
  Thanks go to Jose Lalin <dezac@corevia.com>
  * source/rtl/dates.c
    - localtime() returns tm_year with 1900 already subtracted from it,
      so it is necessary to add 1900 back when formatting the date.

19990603-18:30 CET Eddie Runia
  * source/rtl/classes.c; source/rtl/tclass.prg; source/rtl/arrays.c
  * include/ctoharb.h; include/extend.h
    New class module added with lots of commands and alphabetic order.
    aClone() no longer necessary for super casting
    ctoharb.h updated so the forward declarations could be removed.

19990603-16:00 CET Eddie Runia
  * source/rtl/classes.c
    wLimit bug resolved

19990603-15:25 CET Eddie Runia
  * source/compiler/harbour.y
    <func>()[<index>] syntax added

19990603-13:10 CET Eddie Runia
  * source/rtl/classes.c
    small optimalization

19990603-11:40 CET Eddie Runia
  * source/compiler/harbour.y
    <obj>:<meth>[<index>] := <value> syntax added
  * build32.bat
    runner build from batch file

19990603-00:00 PST Ron Pinkas
  * hvm.c
    - Changed VitualMachine() to use direct dynamic call for processing pcodes rather tha the switch loop.

19990603-00:30 EDT David G. Holm <dholm@jsd-llc.com>
  * makedos.env
    - Removed HARBOURDIR definition to a batch file

19990602-23:30 EDT David G. Holm <dholm@jsd-llc.com>
  * source/compiler/makefile.dos
    - bison needs -y option so that it won't replace harbour.c with y_tab.c
      when building Harbour with DJGPP
  * source/rtl/console.c
    - Moved MAXROW() and MAXCOL() from gtapi.c and added #ifdef USE_GTAPI
      in each. The #else condition defines the screen as 24x80 (23, 79)
  * source/rtl/gtapi.c
    - Moved MAXROW() and MAXCOL() to console.c in order to not include the
      GT API when it isn't wanted (such as when building with DJGPP)

19990602-20:45 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/environ.c
    - Modified #ifdef _Windows section to return "Windows"
      instead of "Windows 95/98".

19990602-18:20 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/strings.c
    - Changed if( lLen > lSubLen ) to if( lLen >= lSubLen )
      Reported by "Alexander S.Kresin" <alex@belacy.belgorod.su>

19990602-16:00 EDT David G. Holm <dholm@jsd-llc.com>
  + tests/broken/codebloc.prg
    - Output doesn't match Clipper. Clipper outputs NIL and 42,
      (both 5.2e and 5.3b), but Harbour outputs NIL and NIL (as
      tested with Harbour built using Borland C++ 3.1 using the
      build31.bat and makefile.b31 files)

19990602-22:10 CET Eddie Runia
  * tests/working/run_exp.h
    gtApi and new console functions added

19990602-16:00 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/console.c
    - OS/2 requires that stdout and stderr be flushed in order to stay
      synchronized with the GT API
  * source/rtl/gt/gtos2.c
     - The gtPuts function was using strlen() on the text buffer instead
       of using the text length parameter

19990602-14:50 EDT David G. Holm <dholm@jsd-llc.com>
 * makefile.b31
    - Added itemapi.h as dependancy for arrays.obj
  * makefile.icc
    - Added new GT string modules
    - Added Harbour include file dependencies to library sources
  * source/rtl/arrays.c
    - Added #include <itemapi.h>, which is needed by C++ compilers
  * source/rtl/console.c
    - Removed two trailing semicolons from #endif directives
  * source/rtl/gtapi.c
    - When adding HARBOUR MaxRow() and MaxCol() earlier, I forgot the
      rule that Harbour functions may not use any lower case letters
    - Added end comment for comment block around color tests in order
      to avoid having nested comments
  * source/tools/chareven.c
    - Added (char *) type conversion to _xgrab() function call
  * source/tools/charmix.c
    - Added (char *) type conversion to _xgrab() function call
  * source/tools/charodd.c
    - Added (char *) type conversion to _xgrab() function call
  * source/tools/strexpan.c
    - Added (char *) type conversion to _xgrab() function call


19990602-13:05 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Added the new gt functions (which have nothing to do with the GT API)
    - All Harbour library source modules are now dependent upon the proper
      include files.
  * source/rtl/console.c
    - The GT API and dev_row, dev_col synchronization now also includes
      OUTSTD() and OUTERR().
  * source/rtl/gtapi.c
    - Corrected error in column overflow handling in _gtWrite()

19990602-18:40 CET Eddie Runia
  * tests/working/run_exp.h
    gt_string functions added

19990602-11:35 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/console.c
    - Added HARBOUR SCROLL()
  * source/rtl/gtapi.c
    - Added HARBOUR MAXROW() and MAXCOL()
  + tests/working/scroll.prg
    - New test module to demonstrate scrolling

19990602-12:00 WIB Andi Jahja <andij@aonlippo.co.id>
  + gt.b32 - make file for gt functions
  + bldgt32.bat - batch file for hbgt.lib
  * tests\working\bld32exe.bat - to include hbgt.lib
  * tests\working\testgt.prg - test program for hbgt.lib
  + some function from PD gt.lib ported to Harbour :
    - source\tools\ascpos.c
    - source\tools\atdiff.c
    - source\tools\chareven.c
    - source\tools\charodd.c
    - source\tools\chrcount.c
    - source\tools\chrtotal.c
    - source\tools\charmix.c
    - source\tools\asciisum.c
    - source\tools\chrfirst.c
    - source\tools\strasint.c
    - source\tools\strcount.c
    - source\tools\strcspn.c
    - source\tools\strdiff.c
    - source\tools\strexpan.c
    - source\tools\strleft.c
    - source\tools\strpbrk.c
    - source\tools\strright.c
  + doc\vm.txt - description of Harbour Virtual Machine

19990602-12:30 CET Eddie Runia
   * source/rtl/arrays.c
     memory leakage in arrayClone plugged

19990602-09:30 Alexander Kresin
  Updated:
   * source/hbpp/hbpp.c - main preprocessor file
   * source/hbpp/c.prg  - sample file
   * source/hbpp/makefile.b16
   * source/hbpp/makefile.b32
  Added:
   * source/hbpp/buildgcc.bat
   * source/hbpp/table.c

19990601-23:50 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Made progress on GT API, so put USE_GTAPI back in as default.
  * source/rtl/console.c
    - Cleaned up synchronization between GT API and dev_row, dev_col
  * source/rtl/gtapi.c
    - Initialize starting row and column to 0 instead of 1
    - _gtMaxCol() and _gtMaxRow() are 0-based in Clipper, so subtract 1
      from the device width and height
    - Removed call to strlen() in _gtSave(), because Clipper does not appear
      to require the screen buffer to be initialized, just allocated
    - Changed _gtWrite() to deal with writing multiple rows of text
    - Wrote _gtScroll(), which is needed by _gtWritePos() and _gtWrite().

19990601-21:35 CET Eddie Runia
  * tests/working/multinh.prg, source/rtl/classes.c, source/rtl/tclass.prg
    first step to multiple inheritance

19990601-18:15 CET Eddie Runia
  * tests/working/inherit.prg, source/rtl/classes.c, source/rtl/tclass.prg
    version correct release (+ super )

19990601-12:00 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Ran into problems using GT API with tests\working\mathtest, so removed
      USE_GTAPI from default use.
  * source/compiler/harbour.y
    - Added missing third parameter (a copy of the first one) to the comment
      section of the generated C pcode for _PUSHDOUBLE.

19990601-12:15 CET Eddie Runia
   * tests/working/inifiles.prg
     new Mab version installed
   * tests/working/inherit.prg, source/rtl/classes.c
     stackfree() bug disappeared (??) after using itemapi in classes.c

19990601-09:50 CET Eddie Runia
   * include/cgi.ch, tests/working/testcgi.prg
     CGI test program added
   * tests/working/run_exp.h
     GetEnv() added

19990531-23:05 CET Eddie Runia
   * source/compiler/harbour.y
     determination of symbol scope now correct.

19990531-21:45 CET Eddie Runia
   * tests/working/inherit.prg
     newer test program. reported crash was due to static functions ?
   * source/rtl/classes.c
     some small improvements

19990531-16:35 CET Matthew Hamilton (upload by Eddie Runia)
   * tests/working/inifiles.prg
     version 2 which creates harbour.new

19990531-14:30 CET Matthew Hamilton (upload by Eddie Runia)
   * tests/working/harbour.ini, tests/working/inifiles.prg
     added

19990531-13:20 CET Eddie Runia
   * source/rtl/classes.c; source/rtl/tclass.prg
     better version of inheritance
   * tests/working/inherit.prg
     some minor changes

19990531-10:15 CET Felipe G. Coury (upload Eddie Runia)
   * tests/working/testhtml.prg
     beautiful !!

19990530-23:05 CET Eddie Runia
   * source/rtl/objfunc.prg
     since aEval has been clean for a long time, it was time to use it !

19990530-21:30 CET Eddie Runia
   * source/rtl/classes.c; source/rtl/tclass.prg
     initializer and release ready for inheritance
   * tests/working/inherit.prg
     init test added

19990530-12:12 EST Les. Griffith
   * added logic for hb_file in files.c
   * added test filexist.prg to test hb_file() in tests working

19990530-17:30 CET Eddie Runia
   * source/rtl/files.c
     fixed 0x00 byte handling of fReadStr
   * tests/working/readhrb.prg
     now a Harbour program
   * tests/working/readhrb.lnk
     removed. No longer necessary

19990530-11:18 EST Les. Griffith
   * added logic for _fscommit in files.c

19990530-14:00 CET Eddie Runia
  * source/rtl/classes.c; source/rtl/tclass.prg
    first step to inheritage
  * tests/working/inherit.prg
    test program

19990530-13:15 CET Eddie Runia
  * source/rtl/classes.c
    message <> not found bug finally removed

19990530-00:25 EST Les. Griffith
   * add logic for _fslock in files.c

19990529-23:46 Alexander Kresin
  Preprocessor: implementation of #command almost complete
  Updated:
   * source/hbpp/hbpp.c - main preprocessor file
   * source/hbpp/harb.c
   * source/hbpp/c.prg  - sample file
19990529-19:45 CET Eddie Runia
  * tests/working/run_exp.h
    hb_f* functions added

19990529-10:04 EST Les Griffith
  * Files.c defined out scandir on djgpp
  * Set.c added include errno.h for djgpp
  * makefile.dos remaked out tests\working makefile.dos logic
  * created hbdos.bat in tests\working for gcc creation of exes

19990529-15:00 CET Eddie Runia
  * source/rtl/set.c
    small correction in ReleaseSets()

19990528-14:30 EST David G. Holm <dholm@jsd-llc.com>
  * source/rtl/console.c
    - NIL ouptuts "NIL", just like it used to before I removed it after
      running some tests with Clipper, which turned out to be flawed.
    - Improved link between GT API screen position and stdout/stderr
      screen position.

19990528-23:15 WIB Andi Jahja <andij@aonlippo.co.id>
  * source/tools/hb_f.c
    - add hb_fselect

  + tests/working/testsel.prg
    test program for hb_fselect()

19990529-10:11 EST Les Griffith
  * added both builddos.bat and makefile.dos for djgpp dos enviroment

19990528-21:00 WIB Andi Jahja <andij@aonlippo.co.id>
  * makefile.b32
    modified to include hb_f.c in harbour.lib

  + source/tools/hb_f.c
    nanforum ft_f*() clones
    - hb_fuse
    - hb_frecno
    - hb_flastrec
    - hb_fgotop
    - hb_fgobottom
    - hb_fgoto
    - hb_feof
    - hb_freadln
    - hb_fskip

  + tests/working/testhbf.prg
    - Test program for hb_f*() routines

19990527-22:06 EST Les Griffith
  * changed iotest.prg to work without and exit clause

19990527-21:57 EST Les Griffith
  * fix to gtwin.c for duplicate function gtwherex 2nd one should be
    gtwherey

19990527-18:00 EST David G. Holm <dholm@jsd-llc.com>
  * makefile.icc
    - Added missing modules
    - Modified to build console with USE_GTAPI
    - Modified to put console and gtos2 into terminal library
  * source/rtl/console.c
    - Had row,col and y,x reversed in InitializeConsole()
  * source/rtl/gt/gtdos.c
    - Had row,col and y,x reversed in gtWhereX() and gtWhereY()
  * tests/working/biccexe.cmd
    - Include new terminal library

19990527-17:25 EST David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Added -DUSE_GTAPI as standard compiler option
  * source/rtl/console.c
    - Added #ifdef USE_GTAPI to allow compiling without using the GT API

19990527-14:15 EST David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Added gtdos to terminal library
  * include/ctoharb.h
    - Added word wDec parameter to PushDouble prototype (needed by C++ compilers)
  * include/gtapi.h
    - Added $Id$ block at top
    - Added gtWhereX()
    - Added gtWhereY()
  * source/rtl/console.c
    - Added GT API support
    - Added InitializeConsole() to initialize GT API and device screen position
    - Added HARBOUR PROW(), PCOL(), and SETPRC()
    - Synchronize dev_row and dev_col with GT API screen position
  * source/rtl/files.c
    - Borland support now takes into account that older compiler versions
      don't have the POSIX S_ flags.
  * source/rtl/gtapi.c
    - Added $Id$ block at top
    - Changed #include <types.h> to #include <extend.h>
    - Modified _gtWriteCon() to process control characters
  * source/rtl/set.c
    - Added default of "PRN" for HB_SET_PRINTFILE
    - If SET (_SET_DEVCE, "PRINTER") and printer file not open, then open it
  * source/rtl/transfrm.c
    - Added use of wDec parameter in calls to PushDouble()
  * source/rtl/gt/gtdos.c
    - Added $Id$ block at top
    - Added gtWhereX()
    - Added gtWhereY()
    - Removed screen coordinate adjustments (i.e., - 1), because
      Clipper (and therefore Harbour) screen origin is (0,0)
  * source/rtl/gt/gtos2.c
    - Added $Id$ block at top
    - Added gtWhereX()
    - Added gtWhereY()
    - Removed screen coordinate adjustments (i.e., - 1), because
      Clipper (and therefore Harbour) screen origin is (0,0)
    - Note: Still needs some work - doesn't match output from gtdos.c
  * source/rtl/gt/gtwin.c
    - Added $Id$ block at top
    - Added gtWhereX()
    - Added gtWhereY()
    - Removed screen coordinate adjustments (i.e., - 1), because
      Clipper (and therefore Harbour) screen origin is (0,0)
    - Note: Needs to be tested, because I don't have a Windows compiler
  * source/rtl/gt/gtxxx.c
    - Added $Id$ block at top
    - Added gtWhereX()
    - Added gtWhereY()
  * source/vm/hvm.c
    - Added call to InitializeConsole()
    - Added prototypes for InitializeConsole() and InitSymbolTable() for C++ compilers

19990527-19:50 CET Eddie Runia
  * source/rtl/gt/gtdos.c, source/rtl/gt/gtwin.c, source/rtl/gtapi.c
    minor changes
  * makefile.b32
    should be correct now. /* QUESTION : Can anybody do this more the others
                                         as well */
  * tests/working/runner.c run_exp.h
    'DOW()' added to export list

19990527-12:15 CET Eddie Runia
  * tests/working/strip.prg
    slight modification
  * source/rtl/classes.c
    Problem with DynSym (??). Quick fix added to classes.c to stop
    message '<x>' not implemented in class '<y>'

19990527-08:45 CET Eddie Runia
  * makefile.b32
    gtdos added
  * source/rtl/gt/gtdos.c; include/gtapi.h; tests/working/run_exp.h;
    source/rtl/console.c
    Minor changes to get it working

19990527-00:14 Les Griffith
    * moved gtos2.c gtwin.c gtdos.c gtxxx.c to source\rtl\gt
      at Matthew Hamilton suggestion

19990526-22:53 Les Griffith
    * added Bil Simser's gtapi.h to include
      and the c files to source\rtl
    * added to doc Bil's documentation re gtapi

19990526-20:45 EST David G. Holm <dholm@jsd-llc.com>
  * ChangeLog
    - Removed excess whitespace from previous ChangeLog entry
  * makefile.b31
    - Added some missing source files
  * include/set.h
    - Added hb_set_althan and hb_set_printhan
  * source/rtl/console.c
    - Added OUTERR(), DEVPOS(), DEVOUT(), and EJECT()
    - Note: DEVPOS() and DEVOUT() have limited console support, due to the
      lack of a working GT API.
  * source/rtl/files.c
    - Added missing #if ! defined( __WATCOMC__ ) && ! defined( __BORLANDC__ )
      around first use of S_IWUSR (copied from existing #if from second use).
  * source/rtl/set.c
    - Added file open/close support to HB_SET_ALTFILE and HB_SET_PRINTFILE
  + tests/working/output.prg
    - New module to test DEVPOS() and DEVOUT()

19990527-00:40 Ryszard Glab <rglab@imid.med.pl>
    * the support for following keywords are now 100% compatible with Clipper
      EXTERNAL, FIELD, FOR, FUNCTION

19990526-13:30 EST David G. Holm <dholm@jsd-llc.com>
  * source/rtl/dates.c
    - Added hb_dow and HARBOUR DOW() supplied by Jose Lalin <dezac@corevia.com>
  + tests/working/dates3.prg
    - New file to test DOW() supplied by Jose Lalin <dezac@corevia.com>

19990526-17:25 Eddie Runia
  * tests/working/strip.prg
    delete broken one and moved working one in

19990526-16:10 Eddie Runia
  * source/rtl/files.c
    Pass reference error removed.
  * source/rtl/extend.c
    par* commands now work correctly with reference variables.

19990525-23:25 Les Griffith
  * source/rtl/files.c
    added logic to readstr for lasterror

19990525-22:45 CET Eddie Runia
  * tests/working/spawn2.prg; tests/working/runner.c
    support for STATIC functions added and error message for duplicate
    identifiers

19990525-21:30 CET Eddie Runia
  * tests/working/spawn2.prg
    Warning added if not compiled using /gHRB

19990525-19:15 CET Eddie Runia
  * source/runner/runner.c; source/runner/run_exp.h; source/runner
    created. currently in transition.

19990525-15:40 CET Eddie Runia
  * bin, libs/b16, libs/b32, libs/vc, libs/icc, libs/win16 & libs/win32
    added as per request

19990525-10:40 CET Eddie Runia
  * source/vm/initsymb.c
    DATE added to init symbols

19990525-10:03 CET Antonio Linares <alinares@fivetech.com>
  * tests/working/runner.c (shouldn't this file be located at source/runner?)
    - some small changes to admit FILE() Harbour name.
  * tests/working/run_exp.h (shouldn't this file be located at include directory ?)
    - some small changes to admit FILE() Harbour name.

19990525-09:13 CET Antonio Linares <alinares@fivetech.com>
  * makefile.b32
    - project dependencies list order changed to properly build everything in one pass

19990525-09:01 CET Antonio Linares <alinares@fivetech.com>
  * source/rtl/extend.c
    - wArrayIndex Borland C warnings fixed.

19990525-08:45 CET Antonio Linares <alinares@fivetech.com>
  * include/extend.h
    - workaround to avoid conflicts between FILE struct and harbour FILE()
  * source/rtl/files.c
    - _FILE() renamed to FILE()  /* tests/working/test_all.prg now builds fine */

19990525-08:21 CET Antonio Linares <alinares@fivetech.com>
  * makefile.b32
    - enhanced .path.obj so the compiler gets not built always
  * source/rtl/files.c
    - enhanced support for Borland C 5.2 compiler

19990524-19:20 EST David G. Holm <dholm@jsd-llc.com>
  * source/rtl/dates.c
    - Added HARBOUR DATE() function.
  * tests/working/dates.prg
    - Added use of DATE() function in first OUTSTD call.

19990524-21:05 CET Eddie Runia
  * source/rtl/strings.c
    PAD* didn't work correctly with negative numbers
  * source/rtl/extend.c
    _parnl needed casting

19990524-17:10 CET Eddie Runia
  * tests/working/test_all
    Fully automated the test bench.
    If you select HRB, it also runs the program.
    Just press <Enter> a couple of times and you should know how to loose
    Mankala blindly.

19990524-16:45 CET Les Griffith (upload Eddie Runia)
  * tests/working/iotest2.prg
    Test program fReadStr
  * tests/broken/exittest.prg
    Anyone up for a challenge ;-)

19990524-16:40 CET Eddie Runia
  * include/hbsetup.h
    WATCOM if added
  * tests/working/*.prg
    minor updates

19990524-14:30 CET Eddie Runia
  * source/vm/hvm.c
    <xArg> := PValue(<nArg>) added
  * tests/working/run_exp.h
    added to function list
  * tests/working/multiarg.prg
    test program used

19990524-10:25 CET Alexander Kressin (upload Eddie Runia)
  * source/hbpp
    added preprocessor

19990524-08:10 CET Les Griffiths (upload Eddie Runia)
  * source/rtl/files.c
    a step in right the direction

19990523-16:45 CET Eddie Runia
  * tests/working/test_all.prg
    Optional command line option added. If you pass HRB, it will compile
    .HRB files. (Also it redirects the output to test_all.out, because
    it went to quickly)

19990523-16:15 CET Patrick Mast (upload by Eddie Runia)
  * tests/working/test_all.prg, tests/working/test_all.lnl
    Testbank added.
  * tests/working/*.prg
    So programs not qualified for testing.
  * tests/working/rtl_test.prg
    function Main() added

19990523-14:30 CET Eddie Runia
  * tools.b16, tools.b32, bldtls32, bldtools.bat
    send to heaven

19990523-14:05 CET Eddie Runia
  * source/rtl/files.c
    #include added for Borland
  * source/rtl/strings.c
    str error fixed

19990523-12:50 CET Eddie Runia
  * source/rtl/transfrm.c
    Modified for by reference. (Forgot I was Captain of that)

19990523-12:20 CET Eddie Runia
  * include/types.h
    modified the IS_* to work for reference passed variables
  * source/vm/hvm.c
    Changed ->wType to IS_* if possible else added & ~IT_BYREF
  * source/rtl/strings.c
    Strings also modified


19990523-11:36 CET Manuel Ruiz
  * source/rtl/files.c
    Add HAVE_POSIX_IO for Borland and GCC compilers

19990523-08:00 CET Les Griffith (upload by Eddie Runia)
  * source/rtl/files.c
    Yes, revision 1.2 !
  * tests/working/passref.prg, tests/working/iotest.prg
    test files added. (Not functioning correctly yet)

19990522-18:30 CET Eddie Runia
  * tests/working/runner.c
    command-line arguments passed to both init function and running program
  * tests/working/spawn.prg
    test program

19990522-17:50 CET Eddie Runia
  * source/rtl/arrays.c, source/rtl/classes.c
    typical : if it works on one compiler, it will fail on another.
    oClone also modified :-)

19990522-17:25 CET Eddie Runia
  * source/vm/hvm.c
    'Array' bug possibly resolved.
  * source/rtl/arrays.c
    aClone does not loose memory anymore
  * tests/working/ainstest.prg
    test for aClone added.

19990522-15:55 CET Eddie Runia
  * docs/hrb.faq
    Clean up
  * tests/working/stub.dat, tests/working/hbrun.bat
    Renamed stub.bat to hbrun.bat (Better name)

19990522-15:35 CET Eddie Runia
  * tests/working/instr.prg, source/vm/hvm.c
    Les Griffiths patch inserted

19990522-15:10 CET Eddie Runia
  * include/test.ch
    added
  * source/rtl/environ.c
    Crash resolved for C++ Builder
  * tests/working/testtok.prg
    set exact added

19990522-14:40 CET Eddie Runia
  * tests/working/*.bat
    -i..\..\include added

19990522-14:10 CET Eddie Runia
  Change from 11:43 committed
  * tests/broken/instr.prg
    removed
  * include/hbsetup.h
    #define HARBOUR_START_PROGRAM temporarily commented out, because of errors

19990522-11:43 CET Eddie Runia
  * source/vm/hvm.c
    pItem bug in add changed
    Instring operator added
    'unreleased memory block' only get shown if memory block remain open
  * tests/working/instr.prg
    test program for instring added
  * tests/working/runner.c
    'Loading' messages removed
  * source/compiler/harbour.y
    'Debug' messages removed.

19990521-21:45 CET Eddie Runia
  * tests/broken/instr.prg added. Contribution from Les Griffiths.
    formerly known as strcomp
  * source/rtl/transfrm.c.
    Serious error code error
  * source/rtl/classes.c
    Error code added
  * source/vm/hvm.c
    Additional operator overloads added.

19990520-20:07 EST David G. Holm <dholm@jsd-llc.com>
  Thanks go to "Victor Szel" <info@szelvesz.hu> again!
  * source/rtl/strings.c
    - VAL sets the number of integer digits and decimal places for the result

19990520-19:35 EST David G. Holm <dholm@jsd-llc.com>
  Thanks go to "Victor Szel" <info@szelvesz.hu>
  * source/compiler/harbour.l
    - Saves number of decimal places in double constants
  * source/compiler/harbour.y
    - Includes number of decimal places when creating pcode for _PUSHDOUBLE
  * source/vm/hvm.c
    - Pcode for _PUSHDOUBLE extracts number of decimal places

Thu May 20 16:03:24 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * source/rtl/dates.c:
        Nasty bug: using '&' instead of '&&'.

        * config/header.cf:
        * include/Makefile:
        * Makefile:
        Added rules to deal with include files (they are just installed
        into INC_DIR). Now the top level Makefile traverses include before
        source.

        * config/win32/gcc.cf:
        * config/win32/msvc.cf:
        * config/win32/global.cf:
        The include directory is now given by INC_DIR.

        * config/win32/rules.cf:
        Harbour now uses -I to find include files.

        * include/hbsetup.h:
        Moved OS_PATH_DELIMITER back to harbour.y, as PATH_DELIMITER; it
        is now a string that contains "/\\".

        * source/compiler/harbour.y:
        Deal with '/' as path separator ('\\' still works).
        Make sure -q is really quiet.

        * source/rtl/Makefile:
        * source/tools/Makefile:
        Used tabs instead of spaces.

        * source/rtl/gtapi.c:
        * source/tools/io.c:
        Made sure these two compile in non-DOS platforms (don't do much
        though).

        * source/vm/hvm.c:
        Fixed a warning about using %i instead of %li.

19990520-07:10 MST Bil Simser (bsimser@home.com)
  * makefile.vc
    Updated makefile to include new changes to RTL

19990520-13:50 CET Eddie Runia
  * tests/working/transfrm.c
    set date and century added.

19990520-11:00 CET Eddie Runia
  * tests/working/runner.c
    simple file correctness checks added

19990520-03:40 EST David G. Holm <dholm@jsd-llc.com>
  * include/set.h
    - Added hb_set_fixed and HB_SETFIXED().
  * source/rtl/set.c
    - Added hb_set_fixed and HB_SETFIXED().
  * source/rtl/strings.c
    - Added test for hb_set_fixed and set default number of decimal positions
      to hb_set.HB_SET_DECIMALS if hb_set_fixed is TRUE instead of using the
      number of decimal positions specified in the ITEM structure.
  * source/vm/hvm.c
    - Removed the special case for a return value of zero from PushNumber().
  * tests/working/teststr.prg
    - Added a second run of the test with SET FIXED ON.

19990520-03:00 EST David G. Holm <dholm@jsd-llc.com>
  * include/extend.h
    - Added new function hb_str() for public use.
  * source/rtl/console.c
    - hb_outstd() now uses hb_str() instead of formatting numerics itself.
  * source/rtl/strings.c
    - Added new hb_str() function to do all numeric formatting for all of Harbour.
    - Rewrote STR() to call hb_str() after validating parameters.
  + tests/working/teststr.prg
    - New module to test new function hb_str() via STR() and STDOUT().

19990519-23:50 EST David G. Holm <dholm@jsd-llc.com>
  * source/rtl/extend.c
    - Use wDec = hb_set.HB_SET_DECIMALS instead of wDec = 2.
    - _retnd() and _stornd() now set wLength to 20 if the value is over 10 digits.
  * source/rtl/itemapi.c
    - Use wDec = hb_set.HB_SET_DECIMALS instead of wDec = 2.
    - hb_itemPutND() now sets wLength to 20 if the value is over 10 digits.
  * source/rtl/math.c
    - Restored HARBOUR INT() back to use _retnl( _parnd( 1 ) ), because the
      problem was not in the Borland C++ 3.1 compiler, but in the hb_outstd()
      case for IT_LONG in console.c (see 19990518-17:30 EDT David G. Holm for
      the incorrect correction and 19990519-21:40 EST David G. Holm for the
      fix to hb_outstd() in console.c).
  * source/vm/hvm.c
    - Div(), Modulus(), and Power() set wDec to hb_set.HB_SET_DECIMALS.
    - Dec(), Inc(), FOR, and Negate() leave wDec unchanged.
    - Plus() and Minus() set wDec to the larger of the two parameter wDec values.
    - Mult() sets wDec to the sum of the two parameter wDec values.
    - PushDouble() now sets wLength to 20 if the value is over 10 digits.

19990519-22:00 EST David G. Holm <dholm@jsd-llc.com>
 * source/rtl/environ.c
   - Do Windows version check even when #if defined(_Windows).
   - Don't attach version numbers if the major OS version number is unknown.

19990519-21:40 EST David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Modified to support changes to source/compiler/fixflex.c
  * source/compiler/fixflex.c
    - The two largest tables in lexyy.c are now larger than 64K combined,
      so they are now placed into separate source files and the four next
      largest tables are split into a third source file.
  * source/rtl/console.c
    - Corrected display of IT_LONG to use value.lNumber instead of iNumber.
    - Corrected display of IT_DOUBLE to use wLength as integer size, so that
      when printing decimals the total display size is wLength + wDec + 1.
  * source/rtl/extend.c
    - _retnd and _stornd now set wLength to 10 instead of 13.
  * source/rtl/itemapi.c
    - hb_itemPutL now sets wLength to 3.
    - hb_itemPutNL now sets wLength to 10 and wDec to 0.
    - hb_itemPutND now sets wLength to 10 and wDec to 2.
  * source/vm/hvm.c
    - PushDouble, PushInteger, and PushLong now set wLength and wDec.
  * tests/working/ainstest.prg
    - Modified formatting done by aDump() to be more readable.

19990520-01:40 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.y
        -corrected support for INCLUDE environment variable (the last path
        was ignored)
        -definition of path delimiter and path list separator was moved to
        hbsetup.h file. OS_PATH_DELIMITER and OS_PATH_LIST_SEPARATOR are
        now defined.
        -changed #define from OBJ_GENERATION to HARBOUR_OBJ_GENERATION

    * source/compiler/harbour.l
        -EXIT keyword is now properly supported

    * source/vm/hvm.c
        -changed #define from OBJ_GENERATION to HARBOUR_OBJ_GENERATION
        -changed #define from HARBOUR_MAIN to HARBOUR_START_PROCEDURE

    * include/hbsetup.h
        -changed #define from OBJ_GENERATION to HARBOUR_OBJ_GENERATION
        -changed #define from HARBOUR_MAIN to HARBOUR_START_PROCEDURE
        -added #define OS_PATH_DELIMITER
        -added #define OS_PATH_LIST_SEPARATOR

    * include/hberrors.h
        -added #define ERR_UNMATCHED_EXIT

    * source/rtl/environ.c
        -corrected support for Watcom C/C++ compiler

    * tests/working/keywords.prg
        -added test code for EXIT keyword

19990519-21:22 CET Eddie Runia
  * makefile.b16
    Patrick patch (command-line too long entered)

19990519-20:00 CET Eddie Runia
  * tests/working/run_exp.h
    shortened because InitSymbols
  * makefile.b16 / .b32 / .icc
    initsymb.c added

19990519-18:00 CET Eddie Runia
  * docs/hrb.faq
    add some documentation and FAQ list for the .HRB output

19990519-12:50 CET Eddie Runia
  * source/compiler/harbour.y
    Some clean up
  * tests/broken/runner.c | run_exp.h | stub.bat
    removed
  * tests/working/runner.c | run_exp.h | stub.bat
    added runner code
  * tests/working/spawn.prg
    spawn example program
  * tests/working/readhrb.prg + readhrb.lnk
    Clipper program to read .HRB files

19990518-23:15 David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Put all common BCC options in c_opt macro to make it easy to switch to
      C++ by simply adding -P to c_opt and changing -P- on fixflex line to -P+
    - I left the makefile creating Harbour using C, because there was no change
      in harbour.exe size or behaviour with C++ (Borland C++ 3.1)
  * source/compiler/fixflex.c
    - Modified to work with both C and C++ versions of Harbour
  + tests/working/bldpexe.bat
    - Copy of buildexe.bat with -P option to compile with C++
  + tests/working/hbp.bat
    - Copy of hb.bat that calls bldpexe.bat to use C++

19990519-02:45 Ryszard Glab <rglab@imid.med.pl>

* source/compiler/harbour.y
    - added support for INCLUDE environment variable
    - corrected looking for unmatched ENDIF/ELSE//ELSEIF
    - added '-t' option = alternative initialization of symbol table
    When this option is used then the Harbour generates C code for a function
    <modulename>__InitSymbols that have to be called in order to properly
    initialize the global symbol table. You should use this option if you
    want to generate the C code output and your C compiler doesn't allow
    to call any function before the 'main'.

* surce/vm/initsymb.c
    - added new file that registers a symbols table with runtime support
    functions. This file can be edited to add calls for application specific
    functions that registers local symbols tables used in application modules.
    The Harbour compiler can create <modulename>__InitSymbols functions
    when you use '-t' option.

* source/vm/hvm.c
    - added call for InitSymbolTable function that registers symbol table
    with runtime support Harbour functions.

19990518-19:30 David G. Holm <dholm@jsd-llc.com>
  * source/rtl/environ.c
    - Enhanced Harbour OS function to return both OS and Version
      for OS/2, DOS, and Windows 95/98.

19990518-18:00 David G. Holm <dholm@jsd-llc.com>
  + buildicc.cmd
    - New file for IBM C++ 3.0 for OS/2
  + makefile.icc
    - New file for IBM C++ 3.0 for OS/2
  * include/types.h
    - Added #ifdef for IBM C++ 3.0 for OS/2
  * source/compiler/harbour.c
    - Added #ifdef and isatty() for IBM C++ 3.0 for OS/2
  * source/rtl/environ.c
    - Added #ifdef for IBM C++ 3.0 for OS/2
  + tests/working/biccexe.cmd
    - New file for IBM C++ 3.0 for OS/2
  + tests/working/hbicc.cmd
    - New file for IBM C++ 3.0 for OS/2

19990518-23:40 CET Eddie Runia
  * source/compiler/harbour.y
    GenPortObj added. Can be accessed through /gHRB
    generates portable object structure.
  * tests/broken/hrb.bat
    added. simple batch file for HRB compilation
  * tests/broken/runner.c
    added. runner program
  * tests/broken/run_exp.h
    added. runner include file containing 'exportable' functions.

19990518-17:30 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/console.c
    - Use pItem->wLength and pItem->wDec when printing numbers.
  * source/rtl/dates.c
    - Moved date validation to hb_dateEncode function.
    - hb_dtoc now puts date separators in an empty date.
    - DAY function now sets stack.Return.wLength to 3.
    - MONTH function now sets stack.Return.wLength to 3.
    - YEAR function now sets stack.Return.wLength to 5.
  * source/rtl/extend.c
    - Set stack.Return.wLength and stack.Return.wDec for numbers.
    - _retds() now returns 8 spaces for invalid dates.
  * source/rtl/math.c
    - ABS returns same numeric type as parameter.
    - INT returns same numeric type as parameter, but for IT_DOUBLE, the
      value is truncated, wLength is set to 10, and wDec is set to 0.
  * tests/working/dates.prg
    - Removed trailing spaces in strings in OUTSDT calls with multiple items,
      because OUTSTD provides a leading space for all items but the first.
  * tests/working/mathtest.prg
    - Added QOUT(454.14) and QOUT(INT(454)) to debug INT problem with
      Borland C++ 3.1, which lead to change to INT in source/rtl/math.c

19990518-15:20 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/set.c
    - Fixed memory leak in HB_SETCENTURY

19990518-03:05 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.l
        -corrected misspelled wCaseCounter

    * include/hberrors.h
        -new errors definition added (it should be uploaded in previous
        commit -sorry my fault

19990518-01:45 Ryszard Glab <rglab@imid.med.pl>

        * source/compiler/harbour.l, source/compiler/harbour.y
        -added support for '-i' option (#include file search path)
        however it doesn't use SET INCLUDE environment variable yet
        -added error messages if unmatched ENDDO, ENDCASE, ENDIF, NEXT
        is found

        * include/extend.h
        -added forward declaration of CODEBLOCK structure and added
        the proper type for pCodeblock member of ITEM structure

        * source/vm/hvm.c
        -corrected pCodeblock type casting
        -added C++ style declaration of HB_FIRSTSYMBOL and HB_LASTSYMBOL

19990517-16:05 CET Eddie Runia
  * source/rtl/classes.c, source/rtl/tclass.prg, include/extend.h
    Initializers for DATA items added
  * tests/working/clasinit.prg
    Test program added

19990516-20:20 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/dates.c
    - Modified CTOD to perform date validation to only allow dates in the
      range allowed by Clipper: January 1, 0 through December 21, 2999.
    - Added parameter checking to hb_dtoc.
  * source/rtl/extend.c
    - Modified _pards to return an empty string ("") for invalid dates.
    - Modified _retds to set the Harbour date to 0 if the parameter is missing
      or if the parameter is not an 8-character null-terminated string.
  * source/vm/hvm.c
    - Changed EMPTY case for IT_NUMERIC to IT_INTEGER, because IT_NUMERIC is a
      composite of IT_INTEGER, IT_LONG, and IT_DOUBLE, which caused all integer
      values to return .T.
  * tests/working/empty.prg
    - Added SET CENTURY ON and SET DATE BRITISH, and removed text regarding DTOC
      needing to be fixed.

19990516-21:33 CET Eddie Runia
    * tests/working/set.ch removed

19990516-07:04 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.l, source/compiler/harbour.y
        -cleaned rules for NEXT, BREAK, WHILE, BEGIN, DO to be 100%
        Clipper compatible (mainly keyword[] use);
        -corrected support for END keyword;
        -added include files: hbsetup.h and hberrors.h;
        -code for OBJ generation is now linked optionally -it is linked if
        the symbol OBJ_GENERATION is defined in hbsetup.h file;
        -corrected the generation of EXTERNAL symbols

    * source/vm/hvm.c
        -code with support for symbols defined in OBJ files is now linked
        optionally -it is linked if the symbol OBJ_GENERATION is defined
        in hbsetup.h file
        -added support for optional definition of the starting procedure
        (in case when automatic lookup for it doesn't work (Watcom C/C++))

    * include/hbsetup.h
        -new file with Harbour configuration options (see this file for
        available options)

    * include/hberrors.h
        -new file with error constants definition shared by
        harbour.y and harbour.l

    * include/extend.h
        -added declaration of FindDynSym() function used in hvm.c

    * source/rtl/environ.c
        -added correct #include for Watcom C/C++ to use REGS union
        (although I am not sure if OS function should be placed here)

    * source/rtl/itemapi.c
        -corrected wrog declaration of symEval variable
        (it is SYMBOL structure instead of PSYMBOL pointer)

    * tests/working/keywords.prg
        -added test code for END keyword

    * makewat.env, makefile.wat
        -added/corrected makefiles for Watcom C/C++ compiler

    * makedos.env, makefile.dos
        -added/corrected makefiles for pure DOS DJGPP compiler

19990516-06:30 CET Eddie Runia
  * tests/working/bld32exe.bat
    Correct version added

19990516-01:00 CET Eddie Runia
  * source/rtl/arrays.c, source/rtl/extend.h
    ULONG instead of int hb_arrayLen()
    Reallocation bug in arrayAdd fixed

19990515-19:40 CET Eddie Runia
  * source/rtl/classes.c, source/rtl/arrays.c
    oClone added (actually : aClone can handle both :-)

19990515-16:20 CET Eddie Runia
  * source/compiler/harbour.y
    Jump optimalization caused return to fail. Optimalization removed.

19990515-15:15 CET Eddie Runia
  * source/rtl/environ.c
    Crash from geninterrupt resolved

19990515-13:55 CET Eddie Runia
  * source/rtl/classes.c
    Unreleased memory block in inline resolved. AGAIN !

19990515-13:40 CET Eddie Runia
  * source/rtl/classes.c
    CVS Just deleted another upload !!!!

19990515-12:50 CET Eddie Runia
  * tests/working/overload.prg; source/rtl/hvm.c
    overloading basis

19990515-10:20 CET Eddie Runia
  * tests/working/*.bat  make and build files added

19990514-20:10 EDT David G. Holm <dholm@jsd-llc.com>
  * source/rtl/strcmp.c
    - Added SET EXACT ON rules for null strings and trailing spaces.
  * tests/working/strings3.prg
    - Added tests for null strings and trailing spaces.

19990515-01:15 CET Eddie Runia
  * source/compiler/harbour.y
    #include again

19990513-22:20 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Put harbour.obj back into the harbour.exe build.
  * source/compiler/harbour.y
    - Changed Expression EQ (for ==) to generate new PCODE _EXACTLYEQUAL, again.
  * source/vm/hvm.c
    - Modifed the Equal function to take one parameter: BOOL bExact, again.
    - Modified the handler for PCODE _EQUAL to call Equal( FALSE ), again.
    - Added new handler for PCODE _EXACTLYEQUAL, which calls Equal( TRUE ), again.
    - Modified the Equal function to call hb_itemStrCmp with bExact as the new
      third parameter, again.

19990514-23:45 CET Eddie Runia
  * source/rtl/set.c
    IS_STRING and IS_LOGICAL called without checking for empty pItem.

19990514-22:15 CET Eddie Runia
  * tests/working/set.ch
    added

19990514-20:30 CET Eddie Runia
  * include/set.ch (didn't work)
    added
  * source/rtl/classes.c
    Unreleased memory block in inline resolved

19990514-20:15 CET Eddie Runia
  * source/rtl/gtapi.c
    A lot of #ifdef #endif added or else it couldn't build out of the box.

19990514-19:50 CET Eddie Runia
  * source/rtl/codebloc.c
    Codeblock patch from Ryszard applied

19990514-19:45 CET Eddie Runia
  * source/rtl/arrays.c
    Patch from David (see below) was overwritten ??

19990514-17:05 CET Eddie Runia
  * harbour.y
    xVar[ xEl ] += -= *= /= %= ^= added

19990514-16:00 CET Eddie Runia
  * makefile.b32
    - added objfunc.obj
  * source/vm/hvm.c
    #ifdef NO_OBJ added
  * tests/working/hb32.bat, tests/working/bld32exe.bat
    added.


19990513-22:20 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Removed harbour.obj from harbour.exe build, due
      to change from harbour_main to main in harbour.y
  * include/extend.h
    - Added 3rd parameter, BOOL bForceExact, to hb_itemStrCmp
  * include/pcode.h
    - Added new PCODE for _EXACTLYEQUAL to handle difference between = and ==
  * source/compiler/harbour.y
    - Changed Expression EQ (for ==) to generate new PCODE _EXACTLYEQUAL
  * source/rtl/arrays.c
    - Modified ASCAN to call hb_itemStrCmp with FALSE as new 3rd parameter in
      order to match Clipper's use of the = operator for comparisons
  * source/rtl/strcmp.c
    - Added 3rd parameter, BOOL bForceExact, to hb_itemStrCmp and modified the
      code for comparing two strings to not adjust the return value when the
      second string is shorter than the first string and matches the first
      string up to the length of the second string, unless either bForceExact
      or hb_set.HB_SET_EXACT are TRUE
  * source/vm/hvm.c
    - Modifed the Equal function to take one parameter: BOOL bExact
    - Modified the handler for PCODE _EQUAL to call Equal( FALSE )
    - Added new handler for PCODE _EXACTLYEQUAL, which calls Equal( TRUE )
    - Modified the Equal function to call hb_itemStrCmp with bExact as the
      new third parameter
  * tests/working/strings3.prg
    - Added display of the SET EXACT setting before the big string comparison
      test, then duplicated the entire test and added SET (_SET_EXACT, .T.)
      prior to the second set of tests

19990513-11:05 Eddie Runia
  * obj/symbols.obj added
  * makefile.b32
    changed according to Andi/Patrick fix.

19990512-21:30:00 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Added implicit rule to compile .prg files in source\tools

19990512-18:40 Eddie Runia
  * source/tools/stringp.prg
    #defines added
  * makefile.b32
    \ error and .prg path corrected
  * makefile.b16
    .prg path corrected

19990512-01:15:00 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - Added genobj32.c and sybmols.asm
    - Made more developer friendly (you no longer have to remember
      which intermediate files to delete when a build fails due to an
      error in the makefile or an error in an intermediate step).
    - Added fixflex to split flexyy.c into flexyy.c and flex_tab.c
  + source/compiler/fixflex.c
    - New source module to split flexyy.c into smaller flexyy.c with
      the two largest tables in flex_tab.c.
      NB! Not needed for 32-bit compilers.

Tue May 11 18:53:43 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>
        * Makefile:
        Added obj to the list of directories.

        * source/Makefile:
        Added rdd to the list of directories.

        * source/rtl/Makefile:
        Added gtapi.c to the list of C sources.

        * source/rtl/gtapi.c:
        Got rid of two warnings with gcc.

        * source/rtl/environ.c:
        Made sure it compiles with gcc.
        There was a missing #endif.

        * source/tools/stringp.prg:
        * tests/working/debugtst.prg:
        Replaced Debug() with HBDebug(), otherwise the generated C source
        collides with the macro DEBUG.

        * source/vm/hvm.c:
        Corrected a comment.

        * source/rdd/Makefile:
        * obj/Makefile:
        Added these two Makefiles.

19990511-19:20 Eddie Runia
  * source/rtl/classes.c
    (Default) parameter self added to INLINE methods
  * tests/working/inline.prg
    Test of INLINE method.

19990511-09:55 Eddie Runia
  * source/rtl/objfunc.prg, source/tools/stringp.prg
    created from tests/working/debugtst.prg
  * Makefile.*
    files added to list. (Except makefile.vc)

19990511-09:40 Eddie Runia
  * source/rtl/asort.prg
    added a seperate function
  * tests/working/debugtst.prg
    asort removed
  * Makefile.*
    asort added to list. (Except for makefile.vc; Incomplete ?)

19990511-00:07 MSG Bil Simser <bsimser@home.com>
  * source/rtc/environ.c
    - Added OS function
  * tests/working
    - Added OS.PRG test program

19990510-21:45 EDT David G. Holm <dholm@jsd-llc.com>
  * source/harbour.y
    - Put back a C++ lvalue fix that appears to have gotten lost
      during a diff merge:
      Parameter in call to yy_switch_to_buffer with embedded
      assignment needs () around the entire expression in order
      to have the (YY_BUFFER_STATE) type override apply to the
      result of the assignment.

Mon May 10 19:32:34 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * makefile.b32:
        Added source/compiler/harbour.c to this makefile.

        * source/compiler/Makefile:
        Added genobj32.c.

        * source/compiler/genobj32.c:
        Got rid of warnings.

        * source/compiler/harbour.y:
        Added '/' as path separator.

19990510-11:30 Eddie Runia
    * source/rtl/classes.c
      Function IsMessage() added
    * tests/working/debugtst.prg
      Function IsData() / IsMethod() added. Also contains tests for Is*()

19990510-10:05 Eddie Runia
    * source/vm/hvm.c
      Function PCount() added  /* QUESTION: Should it be there ? */
    * tests/working/debugtst.prg
      PCount() used

19990510-09:10 Eddie Runia
    * source/rtl/itemapi.c, include/itemapi.h
      - new version installed
    * source/tools/debug.c, source/rtl/classes.c
      - _item changed to hb_item

19990510-08:32 Eddie Runia
    * include/harbclip.h grabbed

19990510-01:19 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.l, source/compiler/harbour.y
        - corrected syntax check for:  case->  case+=   case-=
        - DO/WHILE/CASE/WITH is now 100% compatible with Clipper
        - there is still problem with comments that ends with **/
        (exactly two asterix and slash)

    * tests/working/keywords.prg
        - added code to test DO/WHILE/CASE/WITH

19900509-23:30 Eddie Runia
   * source/working/mankala.prg
     Instructions added

19990509-21:00 Eddie Runia
   * hvm.c
     Logical equivalence tests added ( ==, !=, >, <, >=, <= )
   * debugtst.c
     Logical equivalence used. (==) aoMethod down to one-liner !

19990509-19:30 Eddie Runia
   * makefile.b16, makefile.b32
     debug.obj added

19990509-18:10 Eddie Runia
   * tests/working/calling
     Function Second changed to SecondOne()
   * tests/working/initexit
   * tests/working/statfun
     See above
   * tests/working/testtok
     i was required in next - Problem resolved (Thanx ! Ryszard ?)

19990509-18:00 CET Victor Szel <info@szelvesz.hu>

   * source/rtl/strings.c:
     hb_At() -> hb_strAt()
   * source/rtl/*.c, source/include/extend.h
     hb_julian2greg() -> hb_dateDecode()
     hb_greg2julian() -> hb_dateEncode()

19990508-20:57 Eddie Runia
   * source/rtl/arrays.c:
     Fixed unreleased memory block in aEval.

19990508-15:24 CET Victor Szel <info@szelvesz.hu>

   * source/rtl/strings.c:
     Fixed warning in PADR(), PADL(), PADC() (David G. Holm)

19990507-23:45 EDT David G. Holm <dholm@jsd-llc.com>
  This update makes Harbour compatible with the IBM C++ compiler.
  * include/init.h
    - Added test for IBM C++ compiler to Microsoft C #if block
  * include/types.h
    - Added #ifdef block for IBM C++ compiler to set #define for
      HARBOUR as simply void and also to set up a new #define
      for EXTERNAL_LINKAGE (as _LNK_CONV) in order for the
      IBM C++ compiler to compile harbour.y.
  * source/compiler/harbour.l
    - Added static to forward delcaration for yyunput in order to
      match the actual definition.
  * source/compiler/harbour.y
    - Added static to forward declaration of __yy_memcpy in order
      to match the actual definition.
    - Added EXTERNAL_LINKAGE to sz_compare4 definition, so
      that the IBM C++ compiler can successfully compile Harbour.
    - Added (BYTE *) type override to szText parameter in second
      invocation of GenPCodeN (the first one already had an override).

19990507-23:15 EDT David G. Holm <dholm@jsd-llc.com>
  * source/vm/hvm.c
    - Changed byte by byte copy used in PushString to memcpy,
      because the side effects of code like szTemp[w++] = szText[w]
      is compiler dependent. Borland C++ 3.1 (in C mode) copies byte
      0 to byte 0, etc., but IBM Visual Age C++ 3.0 (in C++ mode)
      copies byte 1 to byte 0, etc.

Sat May  8 03:02:04 1999 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.y, source/compiler/harbour.l
        -static variables can be accessed in a codeblock even if this
         codeblock is a return value (detached static variables)
        -Harbour finds now illegal initializations of static variables
         (static variables can be initialized using literals only)
        -there is no 'redefinition of predefined function' error when the name
         of compiled source code is the same as reserved function
        -corrected support for /*******/ comments
        -Harbour distinguish now 'CASE' variable, 'CASE()' function and
         CASE statement (see tests/working/keywords.prg)

    * tests/working/keywords.prg
        -added many more wild statements to test Harbour compiler

    * test/working/statics.prg
        -added code to test access of static variables from a codeblock

    * source/rtl/extend.c
        -added brackets to avoid ambiguous if/else

    * source/include/extend.h
    * source/rtl/codebloc.c
        - added support for static variables in a codeblock


19990507-20:15 EDT David G. Holm <dholm@jsd-llc.com>
  * source/compiler/harbour.l
  * source/compiler/harbour.y
  * source/rtl/classes.c
    - Modified all three for C and C++ compatibility.
    - Tested with Borland C++ 3.1 in both C and C++ modes.

19990508-00:18 Eddie Runia
   * source/rtl/classes.c:
        oSend( <obj>, <cMessage>, <xArg,..> added.

Thu May 07 17:00:00 1999  Victor Szel <info@szelvesz.hu>

   * source/rtl/strings.c:
     Adapted changes by Matthew Hamilton <MHamilton@bunge.com.au>
     Some internal functions renamed
     long type changed to ULONG.

19990507-11:30 EDT David G. Holm <dholm@jsd-llc.com>
  * makefile.b31
    - added hbtools.lib
  * source/rtl/dates.c
    - added error handling supplied by Matthew Hamilton <MHamilton@bunge.com.au>
  * source/vm/hvm.c
    - changed call to hb_init_set() to InitializeSets() to match source/rtl/sets.c
  * tests/working/buildexe.bat
    - added hbtools.lib

19990507-09:55 Ryszard Glab <rglab@imid.med.pl>
    * source/rtl/files.c
    * source/rtl/set.c
    * source/rtl/transfrm.c
    * source/tools/stringsx.c
        -added compatibility with Watcom C/C++ compiler
         (char *) type castings

19990507-07:25 Ryszard Glab <rglab@imid.med.pl>

    * source/compiler/harbour.y, source/compiler/harbour.l
        -improoved support for BEGIN SEGEUENCE
        -added distinction between BEGIN command and begin variable
        -added distinction between BREAK command and break variable

    * tests/working/keywords.prg
        -new file to test if we are 100% compatible with Clipper

Thu May 06 18:12:15 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * config/win32/gcc.cf:
        Added (commented by now) linking agains the math library.

        * source/compiler/harbour.y:
        Now the -q option is REALLY quiet.

        * tests/working/Makefile:
        Added all of the tests to the Makefile.

Thu May 06 22:45:00 1999  Victor Szel <info@szelvesz.hu>

        * source/rtl/dates.c:
          Fix to STOD(), added error checking to DTOS(), the later can be
          disabled to make it faster.
        * source/vm/hvm.c, include/extend.h:
          strempty() -> hb_strempty(), declaration moved to .h
        * source/rtl/strings.c:
          hb_strempty() speed optimalization, cleanup.
        * source/vm/dynsym.c:
          OurStrUpr() -> hb_strupr()
          _strgreater -> hb_strgreater()
        * source/rtl/console.c:
          _outstd() -> hb_outstd()
        * source/tools/stringsx.c:
          StrToken() -> hb_strtoken()
        * source/rtl/strings.c:
          LTrim() -> hb_LTrim()
          RTrimLen() -> hb_RTrimLen()
          Lower() -> hb_Lower()
          Upper() -> hb_Upper()
          At() -> hb_At()
          Val() -> hb_Val()
        * source/vm/hvm.c, source/rtl/array.c, source/rtl/strcmp.c,
          include/extend.h
          OurStrCmp() -> hb_itemStrCmp()
        * source/rtl/*.c, source/include/extend.h
          julian2greg() -> hb_julian2greg()
          greg2julian() -> hb_greg2julian()
          Declaration moved to extend.h

Thu May 06 13:58:48 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * source/vm/hvm.c:
        Changed the prototype for ForceLink so that it is declared and
        defined as a static function.

Thu May 06 13:09:45 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * config/bin.cf:
        * config/c.cf:
        * config/lib.cf:
        * config/prg.cf:
        * config/test.cf:
        * source/rtl/Makefile:
        By mistake, we were not compiling the PRG files into OBJS for the
        rtl library.

        * source/rtl/dates.c:
        Changed the use of min with explicit code. min and max are macros
        in some platforms, functions in others, and it is usually a mess
        to link against them.

        * source/Makefile:
        * source/tools/Makefile:
        This directory was not being compiled.

        * source/tools/genobj.c:
        Got rid of most (all?) the warnings.

        * tests/working/Makefile:
        Now the libs to link against are explicitly specified in the
        Makefile.

        * tests/working/statics.prg:
        Cleaned up all ^M characters.

Thu May 06 12:34:45 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * source/compiler/harbour.l:
        * source/compiler/harbour.y:
        * source/rtl/set.c:
        Again, I renamed _AND and _OR to AND_ and OR_, and cleaned up a
        few warnings.

Wed May 05 18:51:06 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/ctoharb.h:
        * source/rtl/arrays.c:
        * source/rtl/files.c:
        * source/rtl/transfrm.c:
        * source/vm/dynsym.c:
        Replaced C++-style comments (//) with C-style commens (/* */).

Wed May 05 18:36:53 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/ctoharb.h:
        * include/dates.h:
        * include/extend.h:
        * include/init.h:
        * include/itemapi.h:
        * include/pcode.h:
        * include/set.h:
        * include/setcurs.ch:
        * include/types.h:
        * source/compiler/harbour.c:
        * source/compiler/harbour.l:
        * source/compiler/harbour.y:
        * source/rtl/arrays.c:
        * source/rtl/classes.c:
        * source/rtl/codebloc.c:
        * source/rtl/console.c:
        * source/rtl/dates.c:
        * source/rtl/environ.c:
        * source/rtl/errorapi.c:
        * source/rtl/extend.c:
        * source/rtl/files.c:
        * source/rtl/itemapi.c:
        * source/rtl/math.c:
        * source/rtl/set.c:
        * source/rtl/strcmp.c:
        * source/rtl/strings.c:
        * source/rtl/transfrm.c:
        * source/tools/datesx.c:
        * source/tools/genobj.c:
        * source/tools/io.c:
        * source/tools/mathx.c:
        * source/tools/stringsx.c:
        * source/vm/dynsym.c:
        * source/vm/hvm.c:
        Added a comment with the CVS Id keyword.

Wed May 05 18:28:28 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * makefile.b16:
        * makefile.b32:
        Added explicit rules to compile harbour.o from harbour.c.
        Don' know why these were necessary, but it seems people had
        problems without them.

Wed May 05 16:29:19 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/pcode.h:
        * source/vm/hvm.c:
        * source/compiler/harbour.y:
        Replaced _AND and _OR with AND_ and OR_.
        Under gcc, these two identifiers are defined out.
        Also, got rid of a few warnings.

        * source/rtl/files.c:
        Implemented a macro trick to allow compilation of
        FOPEN, FREAD and FWRITE.
        Turned off HAVE_POSIX_IO for gcc; it doesn't seem to work.
        Restructured the code so that when HAVE_POSIX_IO is not defined,
        there are no warnings.

Wed May 05 15:30:49 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * source/harbour.y:
        * source/compiler/harbour.c:
        Replaced main() with harbour_main(), and added a separate
        harbour.c with just the main() function.

        * makefile.b16:
        * makefile.b32:
        * makefile.vc:
        Updated these files to reflect the new source/compiler/harbour.c
        file.

        * .cvsignore:
        Added this file with the patterns CVS will ignore while
        processing.

        * config/bin.cf:
        * config/c.cf:
        * config/dir.cf:
        * config/global.cf:
        * config/install.cf:
        * config/lib.cf:
        * config/prg.cf:
        * config/test.cf:
        * config/win32/gcc.cf:
        * config/win32/global.cf:
        * config/win32/msvc.cf:
        * config/win32/rules.cf:
        * Makefile:
        * source/Makefile:
        * source/compiler/Makefile:
        * source/rtl/Makefile:
        * source/vm/Makefile:
        * tests/Makefile:
        This is the GNU-make based build system.

Wed May 05 09:24:22 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/Set.ch:
        * tests/working/block2.PRG:
        Added back these files. They can't be renamed through CVS on NT,
        and the repository will have to be updated by some other means.

Wed May 05 09:19:23 1999  Gonzalo A. Diethelm  <Gonzalo.Diethelm@jda.cl>

        * include/Set.ch:
        * tests/working/block2.PRG:
        Removed these files in preparation to move them to lowercase.

        * ChangeLog:
        Added this file.

May 31, 1999 Ron Pinkas
        Harbour.l modified {Array} and added {FunArray} and {ExpArray}.
        To fix support of <INDEX> state to be recusive as well as support:
        Function()[nIndex].

        /TESTS/WORKING/ArrIndex.prg added this file.

        /TESTS/BROKEN/FuncArr.prg added this file to show:

       // This is NOT working?
       QOut( aFunc()[1]

       // But this IS working!
       a := aFunc()
       QOut( a[1] )

May 31, 1999 Ron Pinkas
        Harbour.l added support for "[String]" inside ARRAY INDEX expressions.
        Added "Sysntax error :" message for the macro operator (&)
        when followed by a string delimiter.

June 1st. 1999 00:30 Ron Pinkas
        Harbour.y -> modified pcode generation to move the push of the counter variable to the NEXT rather than the FOR
        so loop code may manipulate the counter vaiable.

        TEST/WORKING/TestFor.prg -> added this file

   * source/pp/pragma.c
   * contrib/dot/pp_harb.ch
   * tests/inline_c.prg
     * STOPDUMP renamed as ENDDUMP (with Ron permission)

2001-12-21 08:40 UTC-0300 Luiz Rafael Culik <culik@sl.conex.net>
   * utils/hbmake/hbmake.prg
    * small fix

2001-12-21 07:50 UTC-0300 Luiz Rafael Culik <culik@sl.conex.net>
  * source/rtl/filesys.c
    * hb_fsmkdir,hb_fsChdir,hb_fsRmdir,hb_fsDelete,hb_fsRename,hb_fsCurdirBuff()
      now use Win32 API calls
   * utils/hbmake/hbmake.prg
     ! Disabled profile
   * utils/hbmake/hbmutils.prg
     * An small clean up
   * ChangeLog
     * Renamed to ChangeLog.012 and started an new one
2006-02-15 13:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/source/vm/hvm.c
    ! fixed memory leak I introduced changing Ryszard modifications

      need such functionality yet
  + harbour/ChangeLog.015
  * harbour/source/vm/debug.c

  * harbour/harbour.spec
  * harbour/bin/hb-func.sh
    * some modification in xhb* scripts building - adding passing
      predefined compiler and linker switches
  * harbour/source/vm/hvm.c
    * minor code cleanup

2006-09-03 18:55 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/include/hbapicls.h
  * harbour/source/vm/classes.c
  * harbour/source/vm/hvm.c
  * harbour/tests/overload.prg
    + added support for overloading [] in assignment operation

2006-09-03 16:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/ChangeLog
  + harbour/ChangeLog.016
    * new ChangeLog file created
  * harbour/include/hbver.h
    * updated version number to 0.47.0
  * tagged CVS as build47
