19990710-15:00 Ryszard Glab * tests/working/Makefile + added longstr2.prg 19990710-14:00 Ryszard Glab * tests/working/Makefile * removed asctest.prg * renamed errorsys.prg to syserror.prg * tests/working/errorsys.prg - renamed to syserror.prg to avoid duplicated symbol ERRORSYS__initSymbols * source/compiler/harbour.y * EXTERN definition is now in 'Statement' section to compile code: if .T. EXTERNAL xx ENDIF 19990709-19:00 Eddie Runia + tests/working/clsdata.prg Test program supplied by Bruno Cantero * source/rtl/classes.c; source/rtl/tclass.prg inheritance class data bug resolved. 19990709-18:21 Antonio Linares + source/compiler/harbour.l added support for ppo #line token Described line bug was mine. Fixed! + source/compiler/harbour.y added support for ppo #line syntax (including XBase++ style) 19990709-16:25 Eddie Runia * build32.bat; source/runner/runner.c; source/runner/run_exp.h; tests/working/hb32.bat; tests/working/runrdos.bat - tests/working/runner.c; tests/working/run_exp.h runner moved to /source/runner * source/vm/initsymb.c; include/init.h init symbols no longer worked both on Borland C++ Builder as well as DJGPP + source/compiler/harbour.l include bug for DJGPP resolved * tests/working/ainstest.prg copy error resolved 19990709-20:00 Andi Jahja + tests/broken/clasname.prg by Dave Pearson + tests/broken/statics1.prg by Bruno Cantero + tests/broken/statics2.prg by Bruno Cantero 19990709-11:05 CET Eddie Runia * source/compiler/harbour.y Copyright portable objects added 19990709-10:50 CET Eddie Runia * tests/working/*.prg identified my tests and moved them to the PD 19990709-10:30 CET Felipe Coury * tests/working/hscript/hscript.prg; tests/working/hscript/*.hs Copyright & GPL inserted 19990708-20:05 EDT David G. Holm + Added my email address to my Coypright notice in each of the following: * include/fileio.ch * include/filesys.api * include/filesys.h * include/set.ch * include/set.h * include/version.h * source/rtl/console.c * source/rtl/dates.c * source/rtl/devoutp.prg * source/rtl/set.c * source/rtl/strcmp.c * tests/working/output.prg * tests/working/round.prg * tests/working/scroll.prg * tests/working/seconds.prg * tests/working/version.prg 19990708-18:20 EDT David G. Holm * makefile.icc + Have to create a dummy unistd.h in the include directory after running bison and then delete it after building harbour.exe, because GNU bison adds "#include " for C++ mode, but the IBM Visual Age C++ 3.0 compiler doesn't have such a file. * config/dos/global.cf Added individual -$(RM) commands for *.bak, *.obj, core, and *.o, because the COMMAND.COM DEL command won't take more than one target. * include/fileio.ch + Added copyright and license header and filled in version history * include/filesys.api + Added copyright and license header and filled in version history * include/filesys.h + Added copyright and license header and filled in version history * include/set.ch + Added copyright and license header and filled in version history * include/set.h + Added copyright and license header and filled in version history 19990708-22:00 Bruno Cantero CVSed by Andi Jahja Applying undocumented calling to _par*() and _stor*() providing a -1 as the first parameter will access the item located at stack.Return instead of accessing the stack parameters include/extend.h: * hb_param * hb_parc * hb_parclen * hb_pards * hb_parl * hb_parnd * hb_parni * hb_parnl * hb_parinfo * hb_storc * hb_storclen * hb_stords * hb_storl * hb_storni * hb_stornl * hb_stornd source/rtl/extend.c: * hb_param * hb_parc * hb_parclen * hb_pards * hb_parl * hb_parnd * hb_parni * hb_parnl * hb_parinfo * hb_storc * hb_storclen * hb_stords * hb_storl * hb_storni * hb_stornl * hb_stornd source/working : * extend1.prg - undocumented feature included * extend2.c - undocumented feature included 19990808-12:18 Antonio Linares * source/vm/hvm.c Added copyright and license information * source/vm/dynsym.c Added copyright and license information * source/compiler/harbour.l Added copyright and license information * source/compiler/harbour.y Added copyright and license information * source/compiler/genobj32.c Added copyright and license information * source/compiler/symbols.asm Added copyright and license information * source/rtl/dates.c Added copyright and license information * source/rtl/console.c Added copyright and license information * source/rtl/extend.c Added copyright and license information * source/rtl/strings.c Added copyright and license information * source/rtl/arrays.c Added copyright and license information * source/rtl/classes.c Added copyright and license information * source/rtl/errorapi.c Added copyright and license information * source/rtl/itemapi.c Added copyright and license information * source/rtl/tclass.prg Added copyright and license information * source/rtl/error.prg Added copyright and license information * source/rtl/errorsys.prg Added copyright and license information * source/rtl/errorapi.prg Added copyright and license information * include/classes.ch New Harbour file for classes creation commands * include/compiler.h Added copyright and license information * include/ctoharb.h Added copyright and license information * include/errorapi.h Added copyright and license information * include/extend.h Added copyright and license information * include/init.h Added copyright and license information * include/itemapi.h Added copyright and license information * include/pcode.h Added copyright and license information 19990808-10:15 Eddie Runia * source/rtl/transfrm.c header change 19990708-14:00 Andi Jahja * source/rtl/file.c Change per Paul for MSC 19990708-14:00 Bruno Cantero CVSed by Andi Jahja include/extend.api + #define _reta hb_reta * change hb_storlen to hb_storclen source/rtl/extend.h + declaration of hb_reta source/rtl/extend.c :) wArrayIndex use now completely implemented + #include * hb_storc * hb_storclen * hb_stords * hb_storl * hb_storni * hb_stornl * hb_stornd tests/working : * extend1.prg * extend2.c 19990705-14:10 Alexander Kresin * source\hbpp\hbpp.c * source\hbpp\table.c * source\hbpp\hbppmain.c * source\hbpp\hbppint.c * include\hberrors.h * Implemented genError() for preprocessor + Added copyright and license information 19990707-23:10 EDT David G. Holm + harbour.b31 + Separate harbour.exe makefile, so that it is possible to build 16-bit Harbour programs using a 32-bit compiler and the 16-bit libraries or by using a 16-bit compiler and libraries. * makefile.icc + Put bison and flex back into operation after finding OS/2 versions of each that work as expected: gnubison.zip and flex254-2.zip from http://www.leo.org/pub/comp/os/os2/leo/gnu/index.html * include/init.h ! Missing ; after return 1 in HB_STARTUP_SYMBOLS_END for MSC and IBMCPP * source/rtl/transfrm.c ! Missing ; after HB_INIT_SYMBOLS_END 19990707-20:45 EDT David G. Holm * doc/gmake.txt + Added NOTES section with steps needed for a clean build * include/version.h + Added copyright and license header and filled in version history * source/rtl/console.c + Added copyright and license information for functions that I wrote * source/rtl/dates.c + Added copyright and license information for functions that I wrote * source/rtl/math.c + Added copyright and license information for function that I wrote * source/rtl/strcmp.c + Added copyright and license information for function that I wrote * tests/working/output.prg + Added copyright and license information * tests/working/round.prg + Added copyright and license information * tests/working/scroll.prg + Added copyright and license information * tests/working/seconds.prg + Added copyright and license information * tests/working/version.prg + Added public domain information 19990708-01:33 Bruno Cantero CVSed by Andi Jahja source/rt/arrays.c * hb_arrayGetDate() - fixed warning : function returns address of local variable. include/extend.api + #define _parinfa hb_parinfa include/extend.h + declaration hb_parinfa source/rtl/extend.c: * hb_parinfa - now return long tests/working : + extend1.prg + extend2.c These are test programs for Harbour extend system 19990707-20:50 Eddie Runia - tests/working/asctest.prg not an original work 19990707-20:10 Eddie Runia * tests/working/mankala.prg; tests/working/transfrm.prg; tests/working/debugtst.prg; tests/working/readhrb.prg; tests/working/strip.prg; tests/working/inherit.prg; tests/working/guess.prg Copyright added (why not) 19990707-19:40:00 Eddie Runia * source\rtl\asort.prg; source\rtl\objfunc.prg; source\runner\runner.c; tests\working\runner.c; source\tools\debug.c; source\tools\stringp.prg GPL Licensing added * source\rtl\console.c; source\rtl\environ.c; source\rtl\tclass.prg Partial Copyright added 19990707-16:22:20 Bruno Cantero CVSed by Andi Jahja * source/rtl/natmsg/msgspa.c 19990707-16:20:20 Bruno Cantero CVSed by Andi Jahja source/rtl/arrays.c + hb_arrayGetDate - retrieves the date value contained on an array element include/extend.h: + hb_arrayGetDate protoype source/rtl/extend.c * hb_pards - wArrayIndex use when retrieving date value of an array element implemented 19990707-11:10 Alexander Kresin * source\compiler\harbour.l * source\compiler\harbour.y * include\hberrors.h * changed calls of genError() function for implementing it to preprocessor * from harbour.y removed some lines related to #include implementation 19990706-23:35 EDT David G. Holm * source/rtl/set.c + Added header template and filled in complete version history by cross- referencing ChangeLog and the output from "cvs log source/rtl/set.c". 19990706-22:40 EDT David G. Holm * doc/hdr_tpl.txt - Removed "(C)" from Copyright notice + Put author's name rather than date next to each version number, because the RCS tracks dates, but only tracks CVS user names, not author names. + Added version comment for Victor Szel's change * source/compiler/fixflex.c + Placed under GPL * source/rtl/devoutp.prg - Removed "(C)" from Copyright * Updated previous version comments 19990707-03:48 CET Victor Szel * doc/hdr_tpl.txt * Description line changed to be a template, too. * source/rtl/natmsg/msghu.c tests/working/rtl_test.prg + Copyright notice added. 19990707-22:25:59 Bruno Cantero CVSed by Andi Jahja source/rtl/extend.c * hb_parni - wArrayIndex use when retrieving an array element implemented * hb_parnl - wArrayIndex use when retrieving an array element implemented 19990706-16:30 Eddie Runia * source/rtl/asort.prg; source/rtl/objfunc.prg; source/runner/runner.c; source/tools/debug.c; source/tools/stringp.prg; source/rtl/transfrm.c Copyright assertions made. * source/rtl/strcmp.c; source/rtl/classes.c Partial copyright assertion made 19990706-20:15 Bruno Cantero CVSed by Andi Jahja => retrieve the logical value contained on an array element => retrieve the double value contained on an array element source/rtl/arrays.c + internal hb_arrayGetBool + internal hb_arrayGetDouble source/rtl/extend.c * hb_parnl * hb_parnd include/extend.h + hb_arrayGetBool prototye + hb_arrayGetDouble prototype 19990705-14:10 Alexander Kresin * source\hbpp\hbpp.c * fixed some warnings * source\hbpp\table.c * fixed bugs in table, reported by David G. Holm 19990704-23:45 EDT David G. Holm * makefile.b16 + Added devoutp * makefile.b31 + Added devoutp * makefile.b32 + Added devoutp * makefile.icc + Added devoutp * makefile.vc + Added devoutp + Added commands to compile .prg to .c * include/dates.h + Added date format parameter to hb_dtoc() * source/rtl/Makefile + Added devoutp * source/rtl/console.c ! Corrected non-GT API version of DISPBOX() to also draw lines + Added date format parameter to call to hb_dtoc() * source/rtl/dates.c + Added date format parameter to hb_dtoc() instead of always using hb_set.HB_SET_DATEFORMAT, so that TRANSFORM() can use it + Added hb_set.HB_SET_DATEFORMAT as parameter in call to hb_dtoc() + source/rtl/devoutp.prg + New module for HARBOUR DEVOUTPICT(,,[]) * source/rtl/gtapi.c ! Corrected hb_gtBox to also draw lines * source/rtl/strings.c + Added hb_set.HB_SET_DATEFORMAT as parameter in call to hb_dtoc() * source/rtl/transfrm.c ! Corrected date transformation to call hb_dtoc() with either hb_set.HB_SET_DATEFORMAT, the 2-digit year british date format, or the 4-digit year british date format (depending upon the use of the format function "@E" and the setting for SET CENTURY + tests/working/say.prg + Demonstrates DEVPICT() by use of @ ... SAY ... PICTURE ... 19990704-18:50 EDT David G. Holm * include/ctoharb.h * Converted length parameter in PushString to ULONG in order to support strings longer than 64 KB * include/errorapi.h + Added hb_errorRT_TERMINAL() wrapper function * include/gtapi.h + Added support for strings longer than 64 KB * include/hbsetup.h + Added optional HARBOUR_LANGUAGE_ manifest constant to select which national language will be in the RTL library created by the GNU Make System * include/set.h + Added extern int hb_set_extrahan; + Limited size of SET strings to 64 KB or less * source/rtl/console.c * Made various changes after running through Gimpel Lint + Added support for HB_SET_EXTRAFILE * source/rtl/environ.c + Added OS() support for DJGPP - Removed OS/2 check from non-OS/2 section of OS() * source/rtl/errorapi.c + Added hb_errorRT_TERMINAL() wrapper function * source/rtl/gtapi.c + Added support for strings longer than 64 KB * source/rtl/msgxxx.c ! Changed from using #if (HB_LANGUAGE == to using #if defined(HB_LANGUAGE_) with a default of UK * source/rtl/set.c * Made various changes after running through Gimpel Lint + Added call hb_errorRT_TERMINAL() wrapper function upon failure to create an alternate file and/or a printer file (and/or an extra file, even though I still don't know have any idea as to what it is used for) + Added support for HB_SET_EXTRAFILE + Added support for strings longer than 64 KB * source/vm/hvm.c * Converted length parameter in PushString to ULONG to allow for strings longer than 64 KB (Note: 16-bit programs and constant strings in source files are still limited to 64 kB) ! Corrected Instring() to call hb_strat() with the entire first string as the first parameter instead of looping to check if each character in the first string is in the second string + tests/working/longstr2.prg + Demonstrates the creation and output of short, long, and very very long strings (10 bytes, 40960 bytes, and 1310720 bytes) * tests/working/output.prg + Added demonstration of _SET_EXTRAFILE 19990704-16:20 Ryszard Glab * include/init.h * changed definitions of HB_INIT_SYMBOLS_* and HB_CALL_ON_STARTUP_* to make it more consistent. The symbol table should be defined now: HB_INIT_SYMBOLS_BEGIN( moduleName__InitSymbols ) { "FIRST", FS_PUBLIC, HB_FIRST, 0}, /* more symbols */ HB_INIT_SYMBOLS_END( moduleName__InitSymbols ); * source/compiler/harbour.y * changed generated C code to support new HB_INIT_SYMBOLS_* macros * 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 * changed to use he new definition of HB_INIT_SYMBOLS_* and HB_CALL_ON_STARTUP_* macros * tests/working/box.prg * changed "BOX.CH" to lowercase (Linux is case-sensitive OS) 19990702-09:08 Alexander Kresin * source\hbpp\hbpp.c * Changed logic for fixing some problems * source\hbpp\hbppint.c * source\hbpp\hbppmain.c * changed code for accepting #line sentences 19990702-00:30 EDT David G. Holm * makefile.b31 * Changed -DUSE_GTAPI to -DHARBOUR_USE_GTAPI + Added module hb_f + Added module copyfile 19990701-22:30 EDT David G. Holm * makefile.icc * Changed -DUSE_GTAPI to -DHARBOUR_USE_GTAPI * source/rtl/console.c ! HB_CALL_ON_STARTUP_END() must be called from inside the function that was defined using HB_CALL_ON_STARTUP_START() * source/rtl/environ.c ! No #includes are allowed ahead of #ifdef __IBMCPP__ 19990630-19:35 EDT David G. Holm * source/rtl/errorapi.c - Removed assignment of default severity value. * source/rtl/error.prg + Added default values to all member variables (which is the correct permanent solution). 19990630-19:25 EDT David G. Holm * source/rtl/errorapi.c * Changed the default severity value in hb_errNew() to ES_WHOCARES as the permanent solution (matches Clipper). 19990630-17:45 EDT David G. Holm * source/rtl/errorapi.c + Added a default severity value of ES_ERROR in hb_errNew() as a temporary workaround to the error severity problem. * source/rtl/errorsys.prg - Removed CHR(13)+CHR(10) from QOUT() of error message, because Clipper doesn't have a blank line between the error message and the error trace. 19990630-02:10 EDT David G. Holm * harbour.b31 - Removed -DHARBOUR_STRICT_ANSI_C * makefile.b31 - Removed -DHARBOUR_STRICT_ANSI_C * include/init.h - Removed #pragma startup * source/compiler/harbour.y + Added output for #pragma startup in C generation * source/rtl/arrays.c + Added #pragma startup * source/rtl/classes.c + Added #pragma startup * source/rtl/console.c + Added #pragma startup * Made InitializeConsole() a startup function * source/rtl/dates.c + Added #pragma startup * source/rtl/descend.c + Added #pragma startup * source/rtl/dir.c + Added #pragma startup * source/rtl/environ.c + Added #pragma startup * source/rtl/files.c + Added #pragma startup * source/rtl/hardcr.c + Added #pragma startup * source/rtl/math.c + Added #pragma startup * source/rtl/mtran.c + Added #pragma startup * source/rtl/set.c + Added #pragma startup * source/rtl/strings.c + Added #pragma startup * source/rtl/transfrm. + Added #pragma startup * source/vm/hvm.c - Removed InitializeConsole() 19990629-23:00 EDT David G. Holm * build31.bat + Added option to build 16-bit harbour.exe instead of just the harbour libraries by using "build31 hb" instead of "build31" * makefile.b31 - Moved everything to do with harbour.exe to harbour.b31 + Added dir and msguk + harbour.b31 + Split out from makefile.b31 + Added preprocessor files * source/compiler/fixflex.c + Switched from using a series of if statements for the smaller large files to using an array of table names and a for loop - Removed yy_acclist from new array * source/vm/hvm.c * Changed a few error messages from "types not match..." to "types do not match..." * tests/working/Makefile * Changed order in which library files are included 19990630-00:25 Ryszard Glab * include/init.h * the HB_INIT_SYMBOLS in now divided into HB_INIT_SYMBOLS_BEGIN and HB_INIT_SYMBOLS_END to support Borland C compilers. * include/hbdefs.h * added missing changes related to new HB_ITEM * source/compiler/harbour.y * corrected line continuation bug (the parse parameters was counted incorrectly) * the compiler generates code to use HB_INIT_SYMBOLS_* macros for symbol table initialization * source/rtl/*.c * corrected some missing code related to new HB_ITEM * changed code that registers local symbol table (it uses HB_INIT_SYMBOLS_* macros now) * source/tools/debug.c * changed code to support new HB_ITEM structure 19990629-05:55 Ryszard Glab * Tagged all sources with the name 'release_old_item' You can download old version by issuing tthe following command: cvs checkout -r release_old_item harbour (be sure to checkout into new directory) To check tag names for file use: cvs status -v * include/extend.h * changed definition of HB_ITEM structure * include/init.h * added HB_INIT_SYMBOLS and HB_CALL_ON_STARTUP macros * include/hbsetup.h * renamed HB_STRICT_CLIPPER_COMPATIBILITY to HARBOUR_STRICT_CLIPPER_COMPATIBILITY + added HARBOUR_STRICT_ANSI_C definition * source/vm/hvm.c * changed to use the new HB_ITEM * source/initsymb.c * changed to use HARBOUR_STRICT_ANSI_C * source/rtl/*.c * changed to use the new HB_ITEM * changed to automatically register symbol table *source/tools/stringsx.c * removed direct access to Harbour internals HB_ITEM structure * source/compiler/harbour.l * corrected line continuation bugs * source/compiler/harbour.y * corrected line continuation bug * tests/working/linecont.prg * added some more code for testing line continuation 19990628-23:30 EDT David G. Holm * source/tools/hb_f.c * Undid previous type change for x in hb_hbfskip(), because it causes a serious problem in an attempt to avoid a warning. The strange thing is that GCC (DJGPP) doesn't complain either way, even with -pedantic enabled. 19990628-21:50 EDT David G. Holm * source/compiler/harbour.y * Changed fopen() call used to create .PPO files from using mode "wt", which is not ANSI-C compliant, to "w", which is the ANSI-C way to create or open/truncate a text mode file. 19990627-23:50 CET Victor Szel * source/compiler/harbour.l ! Fixed line number bug. (LINE opcode, PROCLINE(), error messages) * tests/working/procline.prg tests/working/copyfile.prg tests/working/copyfile.txt + Added. 19990627-16:30 CET Victor Szel * source/rtl/strings.c source/rtl/set.c (added four Clipper errors) source/rtl/math.c source/rtl/environ.c source/rtl/transfrm.c source/rtl/dates.c source/rtl/arrays.c (partially) + Using error launcher wrapper + Made launched errors Clipper compatible. ! Some incompatibilities fixed in error handling (RTRIM, TRIM, ...) * source/rtl/errorsys.prg + Builds error message text like Clipper. * source/rtl/copyfile.c % Optimized var scoping, var naming + Error handling enhanced, using error launcher wrapper. + HB_STRICT_CLIPPER_COMPATIBILITY mode added. ! BYTEP -> char* for strings ! char* -> PBYTE for buffer % Copy loop optimized + Error handling added to copy loop + Notes added about Clipper compatibility, todos, questions. * source/vm/hvm.c * "DUNNO" -> "UNKNOWN" 8) * makedos.env + HARBOUR.EXE called with -i parameter, to be able to include .CH files (probably should be added to other make environments, too.) 19990627-09:00 "Paul Tucker" * source/hbpp/hbpp.c - change lines from 1246 to 1257 19990626-13:35 Ryszard Glab * source/rtl/copyfile.c * added code to copy also the file permissions on *nix * source/rtl/files.c * 'access' function should use F_OK constant instead of 0 on *nix 19990626-13:12 Ryszard Glab * tests/working/Makefile * removed MAKECMDGOALS logic 19990626-06:20 Ryszard Glab * source/compiler/harbour.l * corrected line continuation bugs - removed yy_lex_count_lf function since this is handled by preprocessor now * restored the END rule * tests/working/linecont.prg * moved from tests/broken to tests/working * tests/working/Makefile + added linecont.prg to BAD_PRG_SOURCES section * doc/gmake.txt * updated list of supported compilers 19990625-20:15 EDT David G. Holm * tests/working/inifiles.prg - Added an error message that displays when the specified section number is larger than the number of sections in the .INI file * tests/working/testcgi.prg - Added test to skip WHILE loop if list.txt couldn't be opened * tests/working/teststr.prg - Corrected spelling of _SET_FIXED Fri Jun 25 18:27:43 1999 Gonzalo A. Diethelm * include/Makefile: * tests/working/Makefile: Updated the file list. * tests/working/dirtest.prg: Made the output easier to be read. 19990624-21:10 EDT David G. Holm * source/compiler/harbour.l - Corrected logic in if block that prints spurious error message when using END with a DO or WHILE to actually check the while counter - Changed from printf() error message to GenError( ERR_ENDIF ) 19990625-01:05 CET Victor Szel * include/extend.h include/dates.h source/rtl/extend.c source/rtl/itemapi.c source/rtl/transfrm.c source/rtl/dates.c makefile.b31 makefile.icc hb_date*() function definitions moved to dates.h, all required changed made in sources. ! source/rtl/copyfile.c buffer size 8096 -> 8192 * source/rtl/types.h SYMBOL_UNUSED() -> HB_SYMBOL_UNUSED() + source/rtl/errorapi.c, include/errorapi.h Added return value to hb_errorRT_BASE() ! test.ch removed again from /include ! cgi.ch added again to tests/working/hscript * source/rtl/mtran.c source/rtl/hardcr.c (fixed) changes by Jose Lalin. * include/*.h, include/*.api Clean-ups, headers added, HB_ prefixes, minor fixes. * include/set.h source/rtl/set.c source/vm/hvm.c InitializeSets() -> hb_setInitialize() ReleaseSets() -> hb_setRelease() * types.h -> hbdefs.h include\extend.h include\hbdefs.h include\makefile include\set.h source\compiler\genobj32.c source\compiler\harbour.l source\compiler\harbour.y source\compiler\makefile source\hbpp\harb.h source\vm\initsymb.c gt.b32 makefile.b16 makefile.b31 makefile.b32 makefile.icc terminal.b32 19990624-19:30 EDT David G. Holm * makefile.icc - environ.c needs to be dependent upon version.h * include/version.h - Bumped revision code to "c" (still build 27) 19990624-23:20 CET Kwon, Oh-Chul * source/rtl/natmsg.xxx Korean added * source/rtl/natmsg/msgkor.c Korean language file 19990624-15:40 EDT David G. Holm * doc/hdr_tpl.txt - Added proposed HRL/HVM license exception for executables. - Added GNU web site address. - Replaced "?" in copyright statement with "(list of individual authors)". 19990624-15:15 EDT David G. Holm * makefile.b31 - Removed genobj * makefile.icc - removed genobj * source/rtl/copyfile.c - Added type override to hb_xgrab() call * source/rtl/files.c - Removed test printf() calls that I forgot to remove from hb_fsWrite() after debugging hb_fsCreate() last night * source/rtl/set.c - Minor change in last if block in HB___SETCENTURY() to avoid a signed/unsigned comparison complaint by some compilers. * source/tools/hb_f.c - In hb_hbfskip(), made x the same type as read_len to avoid a signed/unsigned comparison complaint by some compilers. * tests/working/Makefile - Added box.prg * tests/working/test_all.prg - Added optional second command line parameter. If not used, testall.bat uses call, otherwise it uses the command shell specified and automatically adds /c. Examples: test_all hbdos ==> call hbdos ainstest test_all hbdos command ==> command /c hbdos ainstest 19990624-13:40 EDT David G. Holm * source/rtl/gt/gtwin.c - New functions for gtWhereX() and gtWhereY() contributed by Paul Tucker - Removed all occurrences of strlen(), replacing them either with a parameter string length or a calculated string width 19990624-19:17 CET Felipe Coury + tests/working/hscript/ugly.hs additional test file * tests/working/hscript/hscript.prg * tests/working/hscript/readme.txt new version Thu Jun 24 12:25:30 1999 Gonzalo A. Diethelm * include/Makefile: Added the following files: box.h, compat.h, extra.h, super.h, box.ch, color.ch, rdd.api. * source/rtl/Makefile: Added copyfile.c. * source/rtl/errorsys.prg: Changed an END to an ENDDO, to avoid Harbour compilation errors. 19990624-13:00 WIB Andi Jahja * source/rtl/copyfile.c - add run time error 19990623-23:25 EDT David G. Holm * source/rtl/console.c - The non-GT API version of DISPBOX() was creating boxes that were one column and one row to small. 19990623-23:00 EDT David G. Holm * source/rtl/copyfile.c - Renamed _fsCopy to hb_fsCopy(), in case we decide to make it available to other internal Harbour functions later. * source/rtl/files.c - Solved the apparent read only problem with hb_fsCreate(). The problem turned out to be that errno is set to an error value if open() has to create the file instead of opening and truncating. And because hb_fsCreate() wasn't checking the return value before saving errno for hb_fsError(), an error would be indicated if the file had to be created. But now test/working/testcopy works even when newprog.prg (the destination for the COPY TO command) doesn't exist. 19990623-22:05 EDT David G. Holm Code has been added to the following two modules to return the correct number of decimal places for floating point results. * source/rtl/descend.c * source/rtl/math.c 19990623-21:50 EDT David G. Holm Oops! I accidentally left the HB_USE_STRICMP and HB_USE_STRCASECMP stuff in these two files. It's really gone now... * include/hbsetup.h * source/rtl/strcmp.c 19990623-21:30 EDT David G. Holm * makefile.b31 - Added support for source/rtl/copyfile.c - source/rtl/genobj.c was moved to source/contrib * makefile.icc - Added support for source/rtl/copyfile.c + include/box.ch - New include file contributed by Phil Barnett + include/box.h - Moved all border type manifest constants from gtapi.h - Removed leading underscores + include/color.ch - Moved all color attribute manifest constants from gtapi.h - Removed leading underscores * include/gtapi.h - Moved all manifest constants for color attributes to color.ch - Added #include - Removed all manifest constants for cursor types - Added #include - Moved all manifest constants for border types to box.h - Added #include * include/hbsetup.h - Added HB_STRICT_CLIPPER_COMPATIBILITY * source/compiler/harbour.l - Corrected yy_lex_count_lf per Paul Tucker * source/rtl/console.c - Added minimal DISPBOX() support for those without a working GT API based on code contributed by Phil Barnett * source/rtl/dates.c - Added #include - Added HB to front of _STRICT_CLIPPER_COMPATIBILITY and _OPTIMIZE_DTOS manifest constants * source/rtl.gtapi.c - Removed leading underscores from former gtapi.h manifest constants * source/rtl/math.c - Set the default number of decimal digits after call to EXP(), LOG(), and SQRT() - Always return the value from the C/C++ compiler's log() function. Even when the HARBOUR LOG() argument is less than or equal to zero, in which case set the display width to 99 to indicate overflow. * source/rtl/strcmp.c - Removed ability to use library functions stricmp() or strcasecmp() * source/rtl/strings.c - Added #include - Added #ifdef HB_STRICT_CLIPPER_COMPATIBILITY to determine whether to use Clipper overflow indication (a string of asterisks) or to use the C/C++ compiler's indication (+/-Infinity and/or +/-Not a Number) - Added support for date and numeric arguments for first parameter in all PAD functions (PADC, PADL, PADR) * source/rtl/gt/gtdos.c - Removed leading underscores from former gtapi.h manifest constants * source/rtl/gt/gtwin.c - Removed leading underscores from former gtapi.h manifest constants - Changed all malloc() calls to hb_xgrab() * source/vm/hvm.c - In ForTest(), the number of decimal digits was being accessed before the loop counter was popped off the stack instead of after + tests/broken/cbtest.prg - Illustrates codeblock problem pointed out by Dave Pearson + tests/working/box.prg - New test program to demonstrate the use of DISPBOX() based on code contributed by Phil Barnett 19990624-08:00 WIB Andi Jahja * source/rtl/copyfile.c - function name now upper case - change filesys.api to filesys.h - add hb_ prefix to internal calls 19990623-22:30 WIB Andi Jahja + tests/working/testcopy.prg + source/rtl/copyfile.c - __CopyFile() clone * makefile.b32 to include __copyfile() 19990623-19:30 WIB Andi Jahja + tests/working/rtfclass.prg 19990623-01:00 CET Victor Szel ! source/rtl/asort.prg Added patch posted by Dave Pearson quicksort() is STATIC now. + source/rtl/types.h SYMBOL_UNUSED() macro added. 19990622-00:35 Ryszard Glab * source/compiler/harbour.y * source/compiler/harbour.l * removed some unnecessary rules * added the very begginning of MEMVAR support * include/compiler.h + added pMemvars member to _FUNC structure 19990622-14:00 CET Victor Szel * source/rdd/rdd.api moved to /include 19990621-19:09 CET Victor Szel ! source/rtl/asort.prg source/rtl/objfunc.prg Got rid of the references to Default() + Added msgcz852.c, msgczkam.c, msgyu852.c to source/rtl/natmsg/ source/rtl/msgxxx.c posted by Davor Siklic + Added cgi.ch to tests/working/hscript/, too. + source/rtl/environ.c Added patch posted by Dave Pearson 19990622-00:22 Ryszard Glab * config/prg.cf * config/test.cf * corrected to support creation of executables that don't contain extension 19990621-19:00 CET Ad Franse + source/rdd/rdd.api + include/compat.h; include/super.h; include/compat.h First version of the rdd added Mon Jun 21 12:14:15 1999 Gonzalo A. Diethelm * include/Makefile: Got rid of cgi.ch. * source/compiler/Makefile: Got rid of all ^M characters. 19990621-13:27 CET Victor Szel * source/compiler/harbour.y GCC warnings fixed. * source/contrib/genobj.c removed, as suggested by "Antonio Linares" 19990621-13:27 Alexander Kresin updated: * source\hbpp\hbpp.c * source\hbpp\buildgcc.bat * source\hbpp\makefile.b16 * source\hbpp\makefile.b32 * source\compiler\harbour.l Now keywords.prg compiles Ok. Updated makefiles for standalone version of preprocessor. From harbour.l removed all stuff related to early implementation of preprocessor functionality. 19990621-11:50 CET Victor Szel * source/compiler/harbour.y Some old PCODE name changed to new in debug_msg messages. 19990621-04:04 CET Victor Szel * include/errorapi.h - Some additions, note the copyright message at the beginning, as the final text gets done, we should put similar header to each file. ! include/hbsetup.h - USE_GTAPI was mistakenly left defined. + include/errorapi.h include/error.api source/rtl/errorapi.c The rest of the ERROR API functions implemented. . hb_errorRT_BASE() implemented. + doc/hdr_tpl.txt - added templates for file and function headers. 19990621-01:30 CET Victor Szel * whatsnew.txt moved to doc/ directory. * doc/hrb.faq renamed to hrb_faq.txt + tests/broken/vec1.prg readded. 19990621-00:57 CET Victor Szel * include/*.h Some code beatifying. * include/types.h/_PCOUNT renamed back to PCOUNT + IT_MEMOFLAG and IT_MEMO types added to include/extend.h and include/types.h * TEST.CH moved from /include to tests/working ! include/gt.api - _gtBox double define fixed. ! include/extend.api - _param removed since it's not standard Clipper. ! include/item.api - Fixed obsolete references to Array*() functions changed since to hb_array*() ! source/rtl/console/hb_setpos() - Fixed one warning. 19990621-00:37 Ryszard Glab * config/dos/watcom.cf * changed invocation of 'echo' command to overcome problems with too small space for environment variables. Note also that it is possible that you will have to increase this space at DOS startup (for example add SHELL=c:\command.com c:\ /E:2048 /P to config.sys) * removed some variables that can be expanded directly * config/dos/global.cf * all '\' are now replaced with '/' in COMSPEC variable to shell from make utility succesully + added check to not include this file recursively * config/dos/djgpp.cf * removed some unnecessary data * config/linux/gcc.cf * created executables have no extension now * config/win32/gcc.cf * config/win32/msvc.cf + added missing CC_IN variable * config/c.cf * config/global.cf * config/lib.cf * config/rules.cf + added dependency on header files for YACC and LEX sources * some rules or variables got clarified * source/compiler/Makefile + added dependency on header files * include/Makefile + added missing hbpp.h * makewat.env, makefile.wat - removed from repository - replaced by GNU make (dos/watcom.cf) * makefile.gcc, readmake.txt, tests/tests.mk - removed from repository - replaced by GNU make (gcc.cf) 19990620-23:40 CET Victor Szel * source/compiler/harbour.y Finished the required modifications for the PCODE name change. 19990620-21:40 CET Victor Szel * source/compiler/harbour.y source/compiler/genobj32.c source/vm/hvm.c source/runner/runner.c tests/working/runner.c include/pcode.h All PCODE constants prefixed with HB_P_ NOOP opcode added Reference to pcode.h was removed from runner.c 19990620-21:40 CET Victor Szel * source/rtl/console.c missed those hb_ prefixes... 19990620-21:00 CET Victor Szel * CGI.CH moved to /tests/working/ 19990620-20:00 CET Victor Szel * source/rtl/gtapi.c hb_gtGetColorStr() fixed, so that is doesn't require that the passed memory should be zero terminated, checks for null pointer. * source/rtl/console.c 64 -> CLR_STRLEN Added DISPBOX(), DISPBEGIN(), DISPEND(), DISPCOUNT(), ISCOLOR(), NOSNOW() HB_DEVOUT() cleaned up. * source/rtl/gt/gtdos.c source/rtl/gt/gtwin.c Using manifest constants. Cursors sizes in DOS made exactly compatible with Clipper. Removed not Clipper compatible cursor type 5, changed to NONE. 19990620-22:29 Alexander Kresin updated: * source\hbpp\hbppmain.c * source\hbpp\hbpp.c * source\hbpp\harb.h Fixed some problems with preprocessor 19990620-15:50 CET Victor Szel * hb_gtBox() rewritten. It's now 100% Clipper compatible, fill character supported, undocumented frame string padding supported. Leaves the cursor at the same place as Clipper does. Handling of empty or short frame string parameter fixed. Bit slower. source/rtl/gtapi.c 19990620-02:40 Ryszard Glab * config/bin.cf * config/lib.cfg * config/rules.cf * config/linux/gcc.cf * config/win32/gcc.cf * config/win32/msvc.cf * config/dos/dir.cf * config/dos/djgpp.cf * config/dos/global.cf * config/dos/install.cf + config/dos/watcom.cf * added support for other compilers not compatible with gcc (there were gcc switches hardcoded into common rules) New compiler: Watcom C/C++ 10.0 * changed rules for DJGPP - the Makefile can be used now to create harbour with DJGPP. The makedos.env and makefile.dos are obsolete now. * cleared the use of '\' and '/' in make rules for DOS environment * the make looks now for COMSPEC variable to locate the command.com in DOS environment * changed the rule for creating DJGPP library (archive) to use script file instead of command line - there is a limit of 128 characters that can be placed into command line in DOS + include/hbpp.h + new file with definition shared by the preprocessor and harbour.y (needed to match the declaration of AddDefine function) * source/hbpp/harb.h * changed to include the new hbpp.h file * source/compiler/harbour.y * changed the declaration of yy_create_buffer to make it compatible with C++ compilers * added inclusion of hbpp.h (to keep C++ compilers happy with AaddDefine function) * source/compiler/harbour.l + added #pragma to suppress warnings of unreachable code when compiled with Watcom C++ compiler 19990619-14:35 CET Matteo Baccan * makefile.vc, source/hbpp/hbpp.c, source/hbpp/hbppint.c, source/rtl/environ.c, source/rtl/files.c, source/rtl/gt/gtwin.c, source/tools/hb_f.c Patches to allow for succesful compilation with MS Visual C++ 19990619-14:00 Ryszard Glab * tests/working/testcgi.prg * tests/working/testinc.prg * changed the names of included files into lowercase * include/extend.h + added include * source/rtl/set.c + files created by SET PRINTER TO or SET ALTERNATE TO have now changed permissions to write/read by user on UNIX like OS 19990619-12:22 Ryszard Glab * 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 * 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 * 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 * 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 * 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 * 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 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 * 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 * 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 * 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 * 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 * 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 * 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 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 * include/extend.h - Finally noticed and removed the old Error API declarations 19990617-00:00 EDT David G. Holm * include/errorapi.h - Added "#include " * source/rtl/environ.c - Added "#include - Converted all _errFunctions to hb_errFunctions * source/rtl/math.c - Added missing _errFunction to hb_errFunction conversions 19990616-23:30 EDT David G. Holm * makefile.icc - Added or corrected various include file dependencies * include/error.api - Moved all #defines to errorapi.h - Added "#include " - 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 * 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 * 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 * 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 * 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 ) 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 * 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 * source/compiler/harbour.y * added missing error message * source/compiler/harbour.l * removed printf introducced for debugging purpose 19990615-07:00 Ryszard Glab * 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 * 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 * 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 * 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 * 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 * makefile.icc - Added some missing source files * source/rtl/files.c - Put back '#include ' for __WATCOM__, '#include ' for __BORLANDC__, and '#include ' for __IBMCPP__, after removing them earlier while removing '#include ', 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 + 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 ' to '#include ' - 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 ' - Added two missing type overrides on _xgrab() calls in HB_FUSE() 19990610-18:05 EDT David G. Holm * 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 + 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 * 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 * 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 * source/rtl/files.c - Changed "#if" for "#include " from "#if defined( __GCC__) && !defined(__DJGPP__)" to just "#if defined(__CYGNUS__)" * source/rtl/set.c - Moved "#include " 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 * 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 * 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 * 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 * include/extend.h - Moved "#include " 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 " 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 . 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 " 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 * 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 - : is now functioning ! where is +=, -=, *=, /=, %=, ^= and increment / decrement for : + 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 - : := 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 * source/rtl/files.c Removed #include * 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 : :[] :()[] and increment / decrement for ()[], :[] and :()[] * 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 + 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 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 * 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 * 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 Thanks go to Jose Lalin for CDOW() and CMONTH() (and their support functions), msggal.c, msgspa.c, and msguk.c and cdow.prg, to Felipe G. Coury for msgpor.c, and to Eddie Runia 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 * include/hbsetup.h - Added USE_GTAPI, which defaults to NOT being defined 19990604-17:00 EDT David G. Holm 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 * source/vm/hvm.c - Corrected ForTest() to use the correct decimal count 19990604-12:35 EDT David G. Holm * source/rtl/dates.c - Corrected HARBOUR DOW() to use _retni() instead of _retnl() 19990604-12:30 EDT David G. Holm * 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 * 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 : [] 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 * 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 Thanks go to Ryszard Glab * 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 * 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 Thanks go to Jose Lalin * 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 ()[] syntax added 19990603-13:10 CET Eddie Runia * source/rtl/classes.c small optimalization 19990603-11:40 CET Eddie Runia * source/compiler/harbour.y :[] := 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 * makedos.env - Removed HARBOURDIR definition to a batch file 19990602-23:30 EDT David G. Holm * 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 * source/rtl/environ.c - Modified #ifdef _Windows section to return "Windows" instead of "Windows 95/98". 19990602-18:20 EDT David G. Holm * source/rtl/strings.c - Changed if( lLen > lSubLen ) to if( lLen >= lSubLen ) Reported by "Alexander S.Kresin" 19990602-16:00 EDT David G. Holm + 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 * 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 * 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 , 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 * 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 * 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 + 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 to #include - 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 '' not implemented in class '' 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 * 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 * the support for following keywords are now 100% compatible with Clipper EXTERNAL, FIELD, FOR, FUNCTION 19990526-13:30 EST David G. Holm * source/rtl/dates.c - Added hb_dow and HARBOUR DOW() supplied by Jose Lalin + tests/working/dates3.prg - New file to test DOW() supplied by Jose Lalin 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 * 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 * makefile.b32 - project dependencies list order changed to properly build everything in one pass 19990525-09:01 CET Antonio Linares * source/rtl/extend.c - wArrayIndex Borland C warnings fixed. 19990525-08:45 CET Antonio Linares * 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 * 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 * 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 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 := PValue() 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 Thanks go to "Victor Szel" 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 Thanks go to "Victor Szel" * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 __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 __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 * 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 + 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 * 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 * source/rtl/set.c - Fixed memory leak in HB_SETCENTURY 19990518-03:05 Ryszard Glab * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * source/rtc/environ.c - Added OS function * tests/working - Added OS.PRG test program 19990510-21:45 EDT David G. Holm * 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 * 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 * 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 * 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 * source/rtl/strings.c: Fixed warning in PADR(), PADL(), PADC() (David G. Holm) 19990507-23:45 EDT David G. Holm 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 * 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 * 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 * 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( , , added. Thu May 07 17:00:00 1999 Victor Szel * source/rtl/strings.c: Adapted changes by Matthew Hamilton Some internal functions renamed long type changed to ULONG. 19990507-11:30 EDT David G. Holm * makefile.b31 - added hbtools.lib * source/rtl/dates.c - added error handling supplied by Matthew Hamilton * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 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