From 9727b60de03983f561f7035f7467fb677d0a2a7c Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Wed, 15 Feb 2006 13:51:44 +0000 Subject: [PATCH] 2006-02-15 13:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/source/vm/hvm.c ! fixed memory leak I introduced changing Ryszard modifications * harbour/ChangeLog + harbour/ChangeLog.015 * new ChangeLog file created * harbour/harbour.spec * harbour/bin/hb-func.sh * some modification in xhb* scripts building - adding passing predefined compiler and linker switches --- harbour/ChangeLog | 4597 +------------------------------------- harbour/ChangeLog.015 | 4607 +++++++++++++++++++++++++++++++++++++++ harbour/bin/hb-func.sh | 26 +- harbour/harbour.spec | 4 +- harbour/source/vm/hvm.c | 4 +- 5 files changed, 4631 insertions(+), 4607 deletions(-) create mode 100644 harbour/ChangeLog.015 diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 906c2de19c..baf6f7b619 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,4603 +8,18 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ * fixed <-x-> match marker -2006-02-15 11:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/compiler/harbour.c - * do not line striping optimization when -l compiler switch - (suppress line number information) is set - in such case it's only - waste of time - - * harbour/include/hbapifs.h - * harbour/source/common/hbfsapi.c - * harbour/source/compiler/cmdcheck.c - * harbour/source/pp/pplib.c - * harbour/source/rtl/filesys.c - * harbour/source/rtl/set.c - * cleaned the usage of hb_fsAddSearchPath()/hb_fsFreeSearchPath() - It fixes few possible memory leaks and GPF traps. - -2006-02-14 18:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/compiler/harbour.c - * enabled FM statistic by default when compiled without: - -DHB_FM_STATISTICS_OFF - after last Ryszard modification there is no memory leak in valid - .prg code so this may help us to find some unknown problems. - - * harbour/include/hbcomp.h - * harbour/source/compiler/hbpcode.c - * formatting - - * harbour/source/rdd/dbcmd.c - * fixed GPF in DBF2TEXT when work are is not in use. - - * harbour/source/rdd/dbfntx/dbfntx1.c - * disabled validation of unused index pages - Clipper left them - dirty so xHarbour reported that index is corrupted - - * harbour/source/rtl/dbdelim.prg - * generate 2001 RT error when work area is not in used() state - before export file is created. - - * harbour/source/rtl/errorapi.c - * set DOSERROR() to oError:OSCODE when RT error is generated - It's documented Clipper behavior. - - * harbour/source/vm/hvm.c - * some fixes in new operators and removed unnecessary - long->double->long conventions - -2006-02-14 16:10 UTC+0100 Ryszard Glab - * include/hbapiitm.h - * include/hbexpra.c - * include/hbexprc.c - * include/hbexprop.h - * source/compiler/expropta.c - * source/compiler/exproptb.c - * source/compiler/exproptc.c - * source/macro/macroa.c - * source/macro/macrob.c - * source/macro/macroc.c - * source/vm/hvm.c - * source/vm/itemapi.c - * fixed code for adding date and numeric values (introduced - in my last commits) - * removed hb_itemPutBHLong (use hb_itemPutNInt instead) - * added more optimization for localvar+=integer - using HB_P_LOCALNEARADDINT pcode - (borrowed from xHarbour) - -2006-02-14 14:40 UTC+0100 Ryszard Glab - * include/hbexprc.c - * source/compiler/exproptc.c - * source/macro/macroc.c - * disabled optimalization of compound assignment in macro compiler - -2006-02-14 13:40 UTC+0100 Ryszard Glab - * include/hbexprc.c - * source/compiler/exproptc.c - * source/macro/macroc.c - * disabled optimalization of compound assignment for fields - -2006-02-14 11:40 UTC+0100 Ryszard Glab - * include/hbapiitm.h - * include/hbcomp.h - * include/hbexpra.c - * include/hbexprb.c - * include/hbexprc.c - * include/hbexprop.h - * include/hbpcode.h - * source/common/expropt1.c - * source/common/hbfsapi.c - * source/compiler/expropta.c - * source/compiler/exproptb.c - * source/compiler/exproptc.c - * source/compiler/genc.c - * source/compiler/harbour.c - * source/compiler/harbour.l - * source/compiler/harbour.y - * source/compiler/hbdead.c - * source/compiler/hbfix.c - * source/compiler/hbpcode.c - * source/compiler/hbstripl.c - * source/macro/macro.y - * source/macro/macroa.c - * source/macro/macrob.c - * source/macro/macroc.c - * source/pp/ppcore.c - * source/vm/hvm.c - * source/vm/itemapi.c - * fixed many more memory leaks in the compiler - (the Harbour code compiles itself with no memory leaks). - However there are still leaks when the compiler aborts - compilation due to errors. - + added optimalization of '+=' '-=' '*=' '/=' operators - + added hb_itemGetNDDec(), - hb_itemPutHBLong(), - hb_itemPutNumType() - borrowed from xHarbour - - NOTE: new pcodes: - HB_[PLUS|MINUS|MULT|DIV]EQ - HB_[PLUS|MINUS|MULT|DIV]EQPOP - recompile all sources. - -2006-02-12 14:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbapi.h - * harbour/include/hbdefs.h - * cleaned BOOL usage - - * harbour/include/hbcomp.h - * harbour/include/hbpp.h - * harbour/source/compiler/harbour.l - * harbour/source/compiler/harbour.sly - * harbour/source/compiler/harbour.y - * harbour/source/pp/ppcomp.c - * harbour/source/pp/ppcore.c - * harbour/source/pp/pplib.c - * harbour/source/pp/pragma.c - * keep functions and public variables definitions in header files. - Do not use any extern ... in source code to aviod possible mistakes - ! fixed some mistakes in BOOL/int declarations - * use hb_fsFreeSearchPath() to free allocated path list - - * harbour/source/compiler/harbour.c - * keep functions and public variables definitions in header files. - + added memory statistic module - it's disabled now because too - much errors is reported. - Ryszard I hope it will help in locating memory leaks in compiler. - * begun of cleaning static variables to make compiler code - ready for reentrance. - - * harbour/source/rtl/gtstd/gtstd.c - ! fixed cursor positioning - - * harbour/config/os2/gcc.cf - + added socket library - - + harbour/tests/ctwtest.prg - + added CTWIN test program - - + harbour/contrib/dot/Makefile - + added GNU Makefile - -2006-02-12 11:15 UTC+0100 Antonio Linares - * harbour/include/hbdefs.h - * minor fix to avoid conflict with Darwin and Cocoa BOOL use - -2006-02-11 16:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/compiler/harbour.c - * do not strip redundant line information when compiled for debug (-b) - - * harbour/source/compiler/harbour.y - ! fixed typo in hb_compSequenceFinish() call - Ryszard please check me. - using iNumber instead of lNumber caused that on big endian machines - begin sequence / endsequence block was stripped - - * harbour/source/compiler/hbdead.c - ! fixed stupid typo in counting length of debug variable/module names - -2006-02-11 13:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/Makefile - * added missing header files - - * harbour/source/compiler/harbour.c - * added support for @filelst[.clp] - partially borrowed from xHarbour - It's not exactly the same as in Clipper because Clipper creates - one final file when [x]Harbour series of files. - To make it like in Clipper we will have to add support from more - then one symbol table in the final file. It will be also useful - for proper implementation of: - DO - Now in [x]Harbour it works like #include .prg when in Clipper - also new symbol table is created for included files. The difference - can be easy sync when current file has static functions with exactly - the same names as the one included by DO - compilation fails. - * add HB_P_ENDBLOCK to PCODE with codeblock body before run any - optimization - it fixes pcode tracing in jump optimization and - also allow to make some validation of generated PCODE - - * harbour/source/rdd/dbstrux.prg - * harbour/source/rdd/dbtotal.prg - * removed not longer necessary temporary alias creation. Harbour - support empty aliases ("") like Clipper. - - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rtl/hbgtcore.c - * casting - - * harbour/source/rtl/gtos2/gtos2.c - ! fixed hb_gt_os2_GetScreenContents() - -2006-02-11 12:40 UTC+0100 Ryszard Glab - * source/compiler/harbour.c - * source/compiler/harbour.y - * source/pp/ppcore.c - * added tracing code - * fixed one more memory leak - -2006-02-09 15:25 UTC+0100 Ryszard Glab - * source/compiler/harbour.c - * fixed to release memory allocated with the proeprocessor - - * tests/mousetst.prg - * minor fix after latest Przemek changes - - * source/pp/ppcore.c - * fixed bug in processing the list of optional repeatable code - reported by Lorenzo - -2006-02-09 12:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/bin/bld.cmd - + added -ldbffpt, -lhbsix, -lhsx libraries for GCC OS2 linking - - * harbour/config/os2/gcc.cf - * harbour/contrib/libct/files.c - + some cleanups for OS2 - please check me. - - * harbour/source/rtl/gtos2/gtos2.c - + implemented hb_gt_os2_GetScreenContents() - please check me - - * harbour/include/Makefile - + added missing hbfixdj.h - - * harbour/source/rtl/gtdos/gtdos.c - ! for screen synchronization after PostExt() - -2006-02-09 03:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rtl/gtapi.c - * minor modifications for GTs which may no flush data in PreExt() - - * harbour/source/rtl/gtwin/gtwin.c - ! fixed Init() code by adding missing SUPER_INIT() - * modified a little bit PreExt() and PostExt() methods - -2006-02-08 20:23 UTC+0100 Antonio Linares - * makefile.nt - * makefile64.nt - * updated with recent changes - -2006-02-08 18:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rtl/gtwin/gtwin.c - + added PreExt() and PostExt() methods - -2006-02-08 15:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rdd/dbcmd.c - ! warning I introduced in last commit cleanup - -2006-02-08 14:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rtl/gtdos/gtdos.c - * updated copyright message with authors from removed mousedos.c - - * harbour/include/hbgtcore.h - * harbour/source/rtl/hbgtcore.c - * harbour/source/compiler/harbour.c - ! fixed BOLL / int typos - - * harbour/source/vm/eval.c - * minor modification - - * harbour/source/rdd/dbf1.c - * enable 'Y' (currency) fields - translated to HB_IT_DOUBLE - - * harbour/source/rdd/dbcmd.c - ! fixed some wrong behavior in SORT parameters setting in __dbArrange() - - * harbour/source/rdd/dbsort.prg - ! removed hack with COPY TO ... when lastrec()==1 - which introduced new bugs - * harbour/source/rdd/hbdbsort.c - ! fixed sort output when only one record is sorted - There are still some problems with sort like sorting numeric - fields as ASCII strings or using strcmp what will not work - with binary fields but all all this code should be rewritten - due to unacceptable performance so I left it as is to some - spare time in the future. - - * harbour/source/rtl/gtwin/gtwin.c - ! save cursor position at startup - - * harbour/source/rtl/net.c - * harbour/source/rtl/gtos2/gtos2.c - * harbour/contrib/hgf/os2pm/os2pm.c - * some warnings cleaned and updates for new API in OS2 build - -2006-02-07 20:03 UTC+0100 Antonio Linares - * source/vm/mainwin.c - * minor fix - -2006-02-07 18:20 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * source/vm/mainwin.c - ! Fixed previous commit. - -2006-02-07 12:20 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * makefile.bc - + Updated for latest changes. - - * bin/bld.bat - + Added codepage lib. - - * source/codepage/cdpbg866.c - * source/codepage/cdpbgiso.c - * source/codepage/cdpbgwin.c - + Added two missing chars to BG alphabet. - - * source/vm/arrays.c - * source/vm/mainwin.c - * source/rtl/hbgtcore.c - * include/hbapigt.h - * source/rtl/gtpca/gtpca.c - * source/rtl/gtstd/gtstd.c - ! Fixed recent compiler warnings. - -2006-02-05 09:47 UTC+0200 Chen Kedem - * source/rtl/gtos2/gtos2.c - * Restore my copyright notice for functions used to be in mouseos2.c - -2006-02-04 17:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/harbour.spec - * harbour/make_bsd.sh - * harbour/make_drw.sh - * harbour/make_gnu.sh - * harbour/make_rpm.sh - * harbour/make_tgz.sh - * harbour/bin/hb-func.sh - * harbour/bin/pack_src.sh - * harbour/config/c.cf - * harbour/config/global.cf - * harbour/config/rules.cf - * harbour/config/darwin/gcc.cf - * harbour/config/darwin/global.cf - * harbour/config/dos/djgpp.cf - * harbour/config/dos/global.cf - * harbour/config/dos/install.cf - * harbour/config/dos/owatcom.cf - * harbour/config/hpux/gcc.cf - * harbour/config/hpux/global.cf - * harbour/config/linux/gcc.cf - * harbour/config/linux/global.cf - * harbour/config/linux/owatcom.cf - * harbour/config/sunos/gcc.cf - * harbour/config/w32/watcom.cf - * include ADSRDD by default in RPMs - * updated for new RPM which does not accept some old tags - * set -fPIC on 64bit platforms - + added /etc/harbour/hb-charmap.def - * updated for new GT system and drivers - - * harbour/contrib/dot/pp.prg - * harbour/contrib/dot/pp_harb.ch - * use _APMAIN as startup function - * cleaned direct access to item internals - - * harbour/contrib/libct/Makefile - + harbour/contrib/libct/ctwfunc.c - + harbour/contrib/libct/ctwin.c - + harbour/contrib/libct/ctwin.h - * added CT3 like Window System - it's a GT driver which inherits - from the existing one and adds CTW functionality - - * harbour/contrib/libct/screen1.c - * updated for GTAPI modifications - - * harbour/contrib/libnf/Makefile - * harbour/contrib/libnf/chdir.c - * harbour/contrib/libnf/mkdir.c - * harbour/contrib/libnf/rmdir.c - * use hb_fs*() API functions instead of calling DOS interrupts - Now NF dir functions works on all platforms - it will be nice - to update other functions too. - - * harbour/contrib/libnf/dispc.c - * harbour/contrib/libnf/ftattr.c - * updated for GT API modifications, some of this code still depends - on EGA/VGA video buffer so will work only if user will force in GT - using it - it will be nice to rewrite them - - * harbour/contrib/odbc/odbc.c - * harbour/contrib/ole/ole2.c - * casting and cleaning direct access to item internals - - * harbour/contrib/rdd_ads/ads1.c - * harbour/contrib/rdd_ads/adsfunc.c - * harbour/contrib/rdd_ads/adsmgmnt.c - * synced with xHarbour - - * harbour/include/Makefile - * added new header files - - + harbour/include/hbgtinfo.ch - + added GTI_* defintions for hb_gtInfo() function. - This function works in similar way to dbInfo() in RDD. - The GTI_* definitions are taken from xHarbour "as is" and - they should be cleaned - not all functionality are supported - in Harbour and some others should be implemented in differ - way then in xHarbour. - - + harbour/include/hbgtcore.h - * harbour/include/hbapigt.h - * new GTAPI - hbgtcore.h file should not be included by user code - it's only for internal use in GT drivers - * HB_inkey_enum changed to int - this is bit field not enumerated type. - Many of C/C++ compilers forbid bit operations on enum types and - forcing it by casting which finally exceeds the enum range is defined - as bug because it may badly interacts with some compiler optimizations - - * harbour/include/hbapi.h - * harbour/include/hbapicdp.h - * harbour/include/hbapierr.h - * harbour/include/hbapifs.h - * harbour/include/hbapiitm.h - * harbour/include/hbapilng.h - * harbour/include/hbapirdd.h - * harbour/include/hbdate.h - * harbour/include/hbdefs.h - * harbour/include/hbinit.h - * harbour/include/hbpcode.h - * harbour/include/hbrdddbf.h - * harbour/include/hbset.h - * harbour/include/hbstack.h - * harbour/include/hbvm.h - * harbour/include/hbvmopt.h - * harbour/include/hbvmpub.h - * separated internal and external API. Now the definitions for - internal HVM structures and functions are excluded by default - they could be enabled if user include hbvmopt.h before other - header files. Such operation should be done _ONLY_ by core - code - if 3-rd party developers make sth like that then it's - for their own risk and such code may stop to work with next - Harbour versions. Without hbvmopt.h the internal structures - like HB_ITEM, HB_DYNS, ... are mapped to 'void' so there is - no way to access their members so we can modify them in the - future without afford for 3-rd party code. - There is one small exception 'type' should be the first member - for HB_ITEM structure because I used a small ugly hack in - HB_IS_*() macros with castin PHB_ITEM to HB_TYPE* - it works - without speed overhead but if you think that it will be - better/cleaner to not use such tricks then it's enough to - change HB_ITEM_TYPE() definitions in hbvmpub.h - see note. - * cleared the usage of HB_EXPORT - to avoid problems with some C/C++ - compilers we agreed that the only one common way of using HB_EXPORT - is adding it ad begining of declaration - please keep this convention - in the future. - + added new functions: - hb_extIsObject(), hb_codeblockId(), hb_idleSleep(), - hb_fsGetOsHandle(), - hb_dynsymFindSymbol(), hb_dynsymGetSymbol(), - hb_dynsymSymbol(), hb_dynsymName(), - hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle() - * changed hb_arrayClone() declaration to: - PHB_ITEM hb_arrayClone( PHB_ITEM pArray ) - * changed hb_arrayFromParams() declaration to: - PHB_ITEM hb_arrayFromParams( int iLevel ) - The previous version needed a pointer to stack relocatable area - so any stack resizing could cause GPF. - - * harbour/include/inkey.ch - * added definitions for extended mouse keys/events and some key - combinations - - * harbour/source/codepage/uc1250.c - * harbour/source/codepage/uc1251.c - * harbour/source/codepage/uc1253.c - * harbour/source/codepage/uc1257.c - * harbour/source/codepage/uc737.c - * harbour/source/codepage/uc850.c - * harbour/source/codepage/uc852.c - * harbour/source/codepage/uc866.c - * harbour/source/codepage/uc88591b.c - * harbour/source/codepage/uc8859_1.c - * harbour/source/codepage/uc8859_2.c - * harbour/source/codepage/uc8859_5.c - * harbour/source/codepage/uckoi8.c - * harbour/source/codepage/uckoi8u.c - * harbour/source/codepage/ucmaz.c - * updated unicode values for characters in rabge 1-31 to keep - DOS compatibility - - * harbour/source/common/expropt1.c - * harbour/source/common/hbarch.c - * harbour/source/common/hbdate.c - * harbour/source/common/hbstr.c - * harbour/source/common/hbver.c - * keep HB_EXPORT at the beginning of function declaration - - * harbour/include/hbpcode.h - * harbour/include/hbcomp.h - * harbour/source/compiler/harbour.c - * harbour/source/compiler/harbour.y - * harbour/source/compiler/hbfix.c - + harbour/source/compiler/hbdead.c - * harbour/source/compiler/hbpcode.c - + harbour/source/compiler/hbstripl.c - % rewritten jump optimization - ! fixed some minor problems - * do not optimize jumps and local variable access by shorter - PCODE version and HB_P_NOOP when jump optimization is - disabled, this is a note I left in source code in few places: - /* - * optimizing jumps here by shorting them and setting HB_P_NOOPs - * only slow down the compilation process for three reasons: - * 1. When it's dummy jump to next instruction we need two passes - * in hb_compOptimizeJumps() to fully remove it - * 2. hb_compOptimizeJumps() also make jump shortcutting in each pass - * 3. When Jump Optimization is disabled (-kJ) then it cause slowness - * at runtime because we will have more HVM loops: first for the - * shorter jump and next for the HB_P_NOOP PCODE(s) - * [druzuz] - */ - - + added support for multi passes in jump/dead code elimination - (hb_compOptimizeJumps()) - By default is set upto three passes. - Now hb_compOptimizeJumps() keeps all compiler internal data clean - on exist and can be called any times and does not change other - compiler's functions behaviors - + added dummy jumps elimination - + added optimization for: - IF .T. - IF .F. - WHILE .T. - WHILE .F. - etc. - * restored empty BEGIN/RECOVER sequence block elimination - if Jump Optimization is enabled then it marks the block - with HB_P_NOOPS else it cut the generated PCODE - + added dead code eliminator (new functions hb_compCodeTraceMarkDead()/ - hb_compPCodeTrace() - it works only when Jump Optimization is - not disabled) - As a result of the above we have smaller and faster PCODE. - - I do not think that we will have meta code support in the reasonable - time and because I need some valid compiler data/structures like - updated table of all jumps for real C code (not PCODE in .c files) - generation then I decide to make some modifications and the above - is in practice a side effect of this work. - - * harbour/source/rdd/dbcmd.c - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/rddord.prg - * harbour/source/rdd/workarea.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/rdd/nulsys/nulsys.c - * synced with my modifications in xHarbour - * updated for API modifications - - * harbour/source/rtl/Makefile - + added gtsys.c, gtfunc.c, hbgtcore.c - - * harbour/source/rtl/accept.c - * harbour/source/rtl/alert.prg - * harbour/source/rtl/cdpapi.c - * harbour/source/rtl/console.c - * harbour/source/rtl/dates.c - * harbour/source/rtl/do.c - * harbour/source/rtl/errorapi.c - * harbour/source/rtl/errorsys.prg - * harbour/source/rtl/file.c - * harbour/source/rtl/fserror.c - * harbour/source/rtl/fstemp.c - * harbour/source/rtl/hbffind.c - * harbour/source/rtl/idle.c - * harbour/source/rtl/math.c - * harbour/source/rtl/oldclear.c - * harbour/source/rtl/strmatch.c - * harbour/source/rtl/strpeek.c - * harbour/source/rtl/valtype.c - * harbour/source/rtl/xsavescr.c - * updated for API modifications - * cleaned some compiler warnings - - * harbour/source/rtl/filesys.c - + added hb_fsGetOsHandle() - * updated for API modifications - - * harbour/source/rtl/gt.c - * harbour/source/rtl/gtapi.c - * harbour/source/rtl/gtapiu.c - + harbour/source/rtl/gtfunc.c - + harbour/source/rtl/gtsys.c - + harbour/source/rtl/hbgtcore.c - * harbour/source/rtl/inkey.c - * harbour/source/rtl/maxrow.c - * harbour/source/rtl/mouseapi.c - * harbour/source/rtl/setcolor.c - * harbour/source/rtl/setposbs.c - * harbour/source/rtl/shadow.c - * new GT API code - - * harbour/source/rtl/saverest.c - * changed default behavior in SEVESCREEN/RESTSCREEN with parameters - out of screen range to be Clipper compatible. Added last logical - parameter to keep previous behavior for programs which begins to - use it. - - * harbour/source/rtl/seconds.c - * include missing header file to fix C++ compilation - * make hb_secondsCPU global function - - * harbour/source/rtl/set.c - * make HB_SET_TYPEAHEAD Clipper compatible - - * harbour/source/rtl/gtcgi/Makefile - * harbour/source/rtl/gtcgi/gtcgi.c - - harbour/source/rtl/gtcgi/mousecgi.c - * rewritten for new GT API - some detail behaviors has been changed but I think the current - implementation is better for CGI programs output - please check - and fix me if necessary - - * harbour/source/rtl/gtcrs/Makefile - - harbour/source/rtl/gtcrs/charmap.prg - + harbour/source/rtl/gtcrs/chrmap.c - - harbour/source/rtl/gtcrs/debug.map - - harbour/source/rtl/gtcrs/eterm.map - * harbour/source/rtl/gtcrs/gtcrs.c - + harbour/source/rtl/gtcrs/gtcrs.h - + harbour/source/rtl/gtcrs/hb-charmap.def - - harbour/source/rtl/gtcrs/kbdcrs.c - - harbour/source/rtl/gtcrs/keymap.prg - - harbour/source/rtl/gtcrs/linux.map - - harbour/source/rtl/gtcrs/mousecrs.c - * new GTCRS based on my xHarbour and Flagship curses code - Please not that at runtime it looks for a file - /etc/harbour/hb-charmap.def where user can fully tune output - for his terminal. This file is included with proper path in - binaries created by make_rpm.sh and make_tgz.sh - Ryszard I've removed some of your extensions which are no longer - necessary and some other (keyboard sequence redefinition) should - be done in a little bit differ way. I would like to talk about it - when you test current code. - Added support for extended mouse keys (middle button and wheel). - - * harbour/source/rtl/gtdos/Makefile - * harbour/source/rtl/gtdos/gtdos.c - - harbour/source/rtl/gtdos/mousedos.c - * rewritten for new GT API - Fixed some small problems, finished mouse code which for DJGPP - is fully Clipper compatible with real mouse SAVE/RESTORE code. - For other compilers it should be updated depending on memory - model and used DPMI driver (if any). - - * harbour/source/rtl/gtos2/Makefile - * harbour/source/rtl/gtos2/gtos2.c - - harbour/source/rtl/gtos2/mouseos2.c - * rewritten for new GT API - Fixed some problems and finished the mouse code. - Please test it - I made all modifications without OS2 and - I was not able to make any test. I'm interesting in information - if it works and the speed difference - f.e. results from - tests/vidtest.prg run with previous and current version. - - * harbour/source/rtl/gtpca/Makefile - * harbour/source/rtl/gtpca/gtpca.c - - harbour/source/rtl/gtpca/kbdos2.gcc - - harbour/source/rtl/gtpca/mousepca.c - * rewritten for new GT API - and finished so now it's full functional GT driver - I'm interesting in keyboard sequences used by PC-ANSI drivers - in DOS so it will be possible to implement also support for - extended keys input. - - * harbour/source/rtl/gtsln/Makefile - * harbour/source/rtl/gtsln/gtsln.c - + harbour/source/rtl/gtsln/gtsln.h - * harbour/source/rtl/gtsln/kbsln.c - * harbour/source/rtl/gtsln/keytrans.c - * harbour/source/rtl/gtsln/mousesln.c - * rewritten for new GT API basing on current xHarbour code - added support for slang 1.4x patched for UNICODE (Debian - patches used by most of current Linux distributions) and - slang 2.x - It's unicode ready, tries to detect terminal mode - (utf-8/iso) at startup and switch the internal logic to - iso/unicode mode. When compiled with slang 1.4x or 2.x - and terminal is in UTF-8 it can display all characters like - in DOS if only used font have them or good fall-back table is - loaded (f.e. the one created by QRCZAK) - Added support for extended mouse keys (middle button and wheel). - - * harbour/source/rtl/gtstd/Makefile - * harbour/source/rtl/gtstd/gtstd.c - - harbour/source/rtl/gtstd/mousestd.c - * rewritten for new GT API - Now it can work as full screen GT driver redrawing the previous - screen contents from internal GT core buffers. I run with this - GT some of my programs and they work quite well ;-) of course - without colors. - - * harbour/source/rtl/gtwin/Makefile - * harbour/source/rtl/gtwin/gtwin.c - - harbour/source/rtl/gtwin/mousewin.c - * updated for new GT API - - + harbour/source/rtl/gtxwc/Makefile - + harbour/source/rtl/gtxwc/gtxwc.c - + harbour/source/rtl/gtxwc/gtxwc.h - * new XWindow Console GT driver based on my and Giancarlo Niccolai - code form xHarbour - this GT can work in XWindow environment only - and create its own window for console output. It delays the - initialization to the moment when user try to display anything on - the screen so even without X Window system programs which uses this - GT can work as long as use only outstd/outerr output. - - * harbour/source/vm/arrays.c - * updated for API modifications - + added hb_arrayId(), - * changed hb_arrayClone() declaration to: - HB_EXPORT PHB_ITEM hb_arrayClone( PHB_ITEM pSrcArray ) - * changed hb_arrayFromParams() declaration to: - PHB_ITEM hb_arrayFromParams( int iLevel ) - - * harbour/source/vm/arrayshb.c - * updated for API modifications - + added new parameter iLevel to function HB_APARAMS() - - * harbour/source/vm/classes.c - * harbour/source/vm/cmdarg.c - * harbour/source/vm/dynlibhb.c - * harbour/source/vm/estack.c - * harbour/source/vm/fm.c - * harbour/source/vm/garbage.c - * harbour/source/vm/maindll.c - * harbour/source/vm/maindllh.c - * harbour/source/vm/maindllp.c - * harbour/source/vm/mainstd.c - * harbour/source/vm/mainwin.c - * harbour/source/vm/memvars.c - * harbour/source/vm/pcount.c - * harbour/source/vm/proc.c - * updated for API modifications - - * harbour/source/vm/codebloc.c - * updated for API modifications - + added hb_codeblockId() - - * harbour/source/vm/dynsym.c - * updated for API modifications - + added new functions: - hb_dynsymFindSymbol(), hb_dynsymGetSymbol(), - hb_dynsymSymbol(), hb_dynsymName(), - hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle() - - * harbour/source/vm/eval.c - * updated for API modifications - * call hb_vmPushState()/hb_vmPopState() in hb_itemDo()/hb_itemDoC() - functions - it's necessary to make HVM reentrant safe. - - * harbour/source/vm/extend.c - * updated for API modifications - + added hb_extIsObject() similar to existing hb_extIsArray() - - * harbour/source/vm/hvm.c - * updated for API modifications - + added new functions: hb_vmPushState(), hb_vmPopState() - which save/restore HVM state (the top stack value which can be - processed and return item and maybe sth else in the future) making - HVM ready for reentrant. - - * harbour/source/vm/itemapi.c - * updated for API modifications - + added new function: - HB_EXPORT PHB_SYMB hb_itemGetSymbol( PHB_ITEM pItem ); - ! fixed bug in hb_itemPutNInt() - - * harbour/tests/Makefile - * harbour/utils/hbdoc/Makefile - * harbour/utils/hbextern/Makefile - * harbour/utils/hbmake/Makefile - * harbour/utils/hbrun/Makefile - * harbour/utils/hbtest/Makefile - - removed badly added: dbfntx, dbfcdx, dbffpt, hbsix libraries. - what broke GNU make compilation for some compilers - This libraries should be included automatically when RDD lib - is included by *.cf files - - Summary: - The whole patch (cvs diff -uN) is ~1.5MB length and I cannot describe - everything in details - sorry but it was too much modifications in - one commit so now just some of general notes. - The header files included as is does not have any information about - internal HVM structures and some functions. In practice only HB_SYMB - is public and it has to be public for .c files generated from .prg - so I force the fixed size of this structure (alignment independent) - by redefining some members to union with void * - it's a little bit - ugly trick but it effectively eliminates the problem of linking - binaries compiled with differ alignment C compiler switches. - The structures like HB_ITEM, HB_CODEBLOCK, HB_STACK, HB_DYNS are not - longer defined and pointers to the defined as void * - like in Clipper - the ITEM structure. It caused that I had to add some new functions - to make some operation still possible to implement. If I missed sth - and any of you will have a problem with your code then please inform - me about it and after a small discussion on Harbour developers list - we can decide if other functions should be added. - The internal API is still accessible. It's enough to include "hbvmopt.h" - file before other header files to enable it. Now only files in - source/vm directory include it. - The 3-rd party code which does not include hbvmopt.h (or tries to - set some internals macros) should be safe for future HVM modifications - and will work also with new binaries so 3-rd party library developers - should remember about it. If they won't then it's only their and - their clients problem not Harbour developers. - With this modifications I also create new GT model which is similar - to the one used by RDD with multi inheritance. It can be quite easy - extended to simultaneously load more then one GT subsystem (sth like - work areas in RDD) but I left it for the future when someone may - need it. hbapigt.h file now contains only information about public - functions and does not have any code which depends on current - internal implementation - it should be backword compatible as long - as somone did not try to use internal GT functions. - The internal GT system use hbgtcore.h file which should not be - included by 3-rd party code as long as someone will not make new - GT driver. The internal GT code is new so I expect that it will - be changed yet in the nearest future (I'm waiting for other developers - feedback) and in such case any 3-rd party GTs will have to be updated. - How it works: - The base GT driver (GTNUL) is fully functional GT driver which - makes all operations on memory buffer. After each screen write - Flush() method is called which check for dispcount() and if - it's 0 then call Refresh() method to update modified area by - Redraw() method. This method is dummy in GTNUL and external - output with this GT can be reached by outstd()/outerr() which - are now redirected to GT methods. A simple GT driver may overload - only Refresh() method to give full screen output. - Application can use only this GT driver and it seems to be very - good choice for GUI and background daemon/service programs. - This GT is loaded at startup then all other GTs can be loaded - later and inherit from the previously loaded GT drivers. - The new GT driver can overload as much method as wants/needs. - Now all GT operations are implemented as GT method so GT driver - can easy change their default behavior, f.e. it may fully overload - color parsing methods and use differ or extended to Clipper color - definitions. - I rewrote all existing GTs to work with new GT model. - OS2 users - please test GTOS2 which I was not able to test and - see the note in Redraw() method. If possible please make some - speed tests. - In fact now there is much more internal operations then it was - before but because they are done on memory only then current - code is much faster in this GT drivers which so far makes all - operations on real video area. I made some tests with GTNUL - and tests/vidtest.prg and the total overhead is minimal. Now - dipbegin()/dispend() in practice does not cost anything so it - gives additional speed improvement in application which extensively - use it. - More then one GT driver can be linked with final binaries and - chose on application startup by //GT switch and/or environment - variable HB_GT= - In the RTL is new GT function GTSYS() which works in similar way - to RDDSYS() in RDD subsystem and for linking default GT driver - for given platform. When RTL is compiled the default GT driver - is set to HB_GT_DEFAULT envvar and if not exist to HB_GT_LIB - envvar and if it also does not exist to hard coded platfom GTs - (see source/rtl/gtsys.c and source/rtl/Makefile for rules) - Adding to source code: - ANNOUNCE GTSYS - disable linking the default GT driver and: - REQUEST HB_GT_ - for linking given () GT driver, f.e.: REQUEST HB_GT_WIN - If you are working in SH environment (Linux and other *nixes users, - DJGPP bash, MinGW shell then it's possible to use -gt switch - in hblnk / hbmk scripts to force linking GT drivers (it could be - repeated with different ) and the first one becomes the default - one. F.e.: - xhbmk -m -n -w -es2 -gtcrs -gtsln -gtstd -gtpca vidtest.prg - Usually the GT driver are loaded at HVM startup but it's possible - to load it later. I created new GT driver CTW which gives full - CT3 like Window system. The CT3 extended driver change the behavior - of some function in Clipper extended driver, f.e WRITECON() or - SETPOS() with parameters out of screen range. So I implemented it - CTW as RT GTs which is loaded when some of CTWIN function is used - (f.e. WOPEN()/WBOARD()) and inherits from any existing GT driver. - This is full CT3 WIN implementation with all detail behaviors I - found (with some CT3 bug fixes). It does not have any CT3 limitations - and can be used for any virtual screen/window size though I hardcoded - CT3 limitation for backword compatibility. If somone will want to - remove it then it will be enough to delete few lines from ctwin.c - file. I'm not CTWIN Clipper user so maybe I missed some side effects - in this driver and was not able to well test it so if you will find - any incompatibilities then please inform me. - THe default GT buffer uses 32bit character cell internally but - in savescreen/restscreen it uses VGA compatible two bytes character - cell. Some GT drivers may want to use differ character cell. - Now GTCRS and GTSLN use 32bit character cell by default. They - need additional information about character set (box/normal) to - properly display box characters. It is possible to force in this - GT drivers using Clipper compatible character cell by calling: - hb_gtInfo( GTI_COMPATBUFFER, ) -> - but in may cause that box drawing characters will be lost in - some countries after RESTSCREEN(). It will depend on used code - page. - HB_GTINFO() is new function which works in similar way to DBINFO() - in RDD. It allows to retrieve/change some of GT driver settings. - GTI_* actions are defined in hbgtinfo.ch - it has all GTI_* - definitions used in xHarbour. Now in Harbour only few of them - are implemented. - The new three .prg functions: - HB_SETKEYCP( [,] ) - HB_SETDISPCP( [,] [,] ) - HB_SETTERMCP( [,] [,] ) - have been added. They set automatic input (HB_SETKEYCP) - and output (HB_SETDISPCP) (or both: HB_SETTERMCP) character - translation. They are also important for some GTs which - informing them about used internal code page for unicode - translation (GTXWC, GTSLN) and/or chosing proper character - set (standard/alternate) for letters and other (f.e. box - drawing characters) (GTCRS, GTSLN), - is encoding used on external (terminal) side - is encoding used internally, if not given then - current code page set HB_SETCODEPAGE() is used. - some of GTs which uses unicode output may - ignore - is optional parameter which interacts with dispbox() - output disabling switching to alternate character - set in some GTs. It effectively causes that if internal - (host) code page contains some letters on the box char - positions then they will be shown also by box drawing - functions like dispbox() instead of CP437 characters. - In some cases it could be useful. By default lBoxChar - is not set and GTs which can switch between standard - and alternate character set (GTCRS, GTSLN) will try to - use alternate character set for box drawing functions. - - Victor: I removed some of your functions. They can be very easy - implemented with hb_gt_GetChar()/hb_gt_PutChar() but I do not want to - make them part of documented external API because some GT drivers may - want to use absolutely differ color definitions and they will stop to - work so I do not want to make this functions documented external API. - - Ryszard: Setting alternative debug keys does not longer work. - I like such possibilities but it should be implemented in differ - way to f.e. using HB_GTINFO interface to allow low level GT driver - extensions, f.e. in *nixes using CTRL+[A-Z] and SIGINT, SIGQUIT, - SIGTSTP signals for real asynchronous setting of debug/cancel flag - without keyboard polling from main HVM loop. I would like to discus - about such more general solution. - - *** Please updated non GNU make files *** - -2006-02-03 15:56 UTC+0100 Antonio Linares - * makefile.nt - * makefile64.nt - + added modules strpeek and dynlibhb - -2006-02-03 15:30 UTC+0100 Antonio Linares (alinares@fivetechsoft.com) - * source/rtl/filesys.c - * Harbour 64 bits required fix - -2006-01-09 14:50 UTC+0100 Ryszard Glab - * include/hbexprb.c - * source/compiler/exproptb.c - * source/macro/macrob.c - * fixed to release the memory if macro compiled code contains - a variable or a function reference - - * source/rtl/filesys.c - * added missing '(' to copile correctly on UNIX'es - - -2005-12-28 13:05 UTC+0100 Antonio Linares (alinares@fivetechsoft.com) - * vm/maindll.c - + Added new functions HBDLLENTRY1() and HBDLLENTRY2() - - These function allow to call a Harbour (self contained) DLL and provide it - one or two Harbour items as parameters. A HBDLLENTRYN() that allows optionally - N parameters would be valuable too. - -2005-12-02 17:12 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * include/hbmath.h - ! Fixed a few declarations to be in sync with the - implementation. (Thanks Chen) - -2005-11-27 11:20 UTC+0200 Chen Kedem - * doc/en/math.txt - * Rename HB_MATHERRMODE() --> HB_MATHERMODE(), - HB_MATHERRORBLOCK() --> HB_MATHERBLOCK(), - math.ch --> hbmath.ch - * Some formating to 76 characters per line - -2005-11-24 23:24 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * include/hbpcode.h - + Comment added about adding new pcodes at the end of - the list for compatibility. - - * source/rtl/filesys.c - + Added hb_fsSetDevMode() Unix branch added (thx Przemek) - - * tests/mathtest.prg - * source/rtl/math.c - ! Fixed prev commit to comply with 10char function name - rule: - HB_MATHERRMODE() -> HB_MATHERMODE() - HB_MATHERRORBLOCK() -> HB_MATHERBLOCK() - - * source/rtl/seconds.c - ! hb_secondsCPU() move inside FlagShip guard instead - of HB_EXTENSION. - * hb_secondsCPU() made static (Harbour level function - helper only with non-std name). - - * source/vm/dynlibhb.c - * include/hbextern.ch - * LIBLOAD(), LIBFREE() moved (back) to Harbour namespace: - HB_LIBLOAD(), HB_LIBFREE() - + Added these functions to hbextern.ch - - * source/rtl/symbol.prg - * source/vm/dynsym.c - * include/hbextern.ch - * Internal function names renamed to comply and to - not collide with existing ones (mistake in prev - commit). - - + tests/symbolt.prg - ; Missed from prev commit. - -2005-11-22 10:31 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * source/rtl/symbol.prg - * source/vm/dynsym.c - * include/hbextern.ch - ! Moved and renamed two functions from BEGINDUMP to their - proper place. - GETSYMBOLPOINTER() -> __DYNSGETPOINTER() - GETSYMBOLNAME() -> __DYNSGETNAME() - + Added the two functions to hbextern.ch - + TOFIX added to symbol.prg to remove the remaining one C - function inside BEGINDUMP. (Antonio, can you take a look?) - -2005-11-22 10:08 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * doc/en/hb_apifs.txt - ! Fixed doc for hb_fsSetDevMode() - - * source/rtl/filesys.c - + Partially undone prev commit, so that now it gives - unreferenced var warnings for the not-implemented - platform branch. - - * tests/bldtest/bldtest.c - + Added missing CVS ID. - - * samples/guestbk/Makefile - * samples/guestbk/bld_b32.bat - * samples/hscript/Makefile - * samples/hscript/bld_b32.bat - * samples/misc/Makefile - * samples/pe/Makefile - * tests/Makefile - * utils/hbdoc/Makefile - * utils/hbextern/Makefile - * utils/hbmake/Makefile - * utils/hbrun/Makefile - * utils/hbtest/Makefile - + Added missing dbf*, hbsix libs. - Could not test GCC because MingW build is broken. - -2005-11-22 02:22 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) - * makefile.bc - * updated to compile source/rtl/strpeek.c - -2005-11-22 01:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbsetup.ch - * enable HB_COMPAT_FLAGSHIP by default - I hope it will not be a problem - if it does then I can disable it - but in *nixes for a long time FlagShip was the only one Clipper - alternative and some of its functions are quite often used in - Clipper/FoxPro programs ported to *nixes so I'd want to keep it - enabled at least when HB_OS_LINUX/HB_OS_UNIX is defined. - - * harbour/include/hbvm.h - + added missing extern in hb_vmAtInit() and hb_vmAtExit() declarations - - * harbour/include/hbvmpub.h - * formatting - - * harbour/source/rdd/dbcmd.c - ! fixed the problem with fieldput(,nil) at phantom recrod reported - by Victor - * do not use C level HB_ITEM - - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - ! fixed possible GPF when "/an/existing/path/" was used as file name. - No in DOS in such case it will casue RT error that file: - /an/existing/path/. - cannot be created (like in Clipper) but in other systems (f.e. Linux) - which allow to use such file names it will work without any problems. - - * harbour/source/rdd/dbffpt/dbffpt1.c - * do not use C level HB_ITEM - - * harbour/source/rtl/Makefile - + harbour/source/rtl/strpeek.c - + added STRPEEK and STRPOKE FS functions covered by HB_COMPAT_FLAGSHIP - macro - - * harbour/source/rtl/philes.c - ! fixed GPF when unshareing string item buffer with embedded 0 by using - hb_itemUnShare() - - * harbour/include/hbapiitm.h - * harbour/source/vm/itemapi.c - + added hb_itemUnShare() - /* un-share given string item */ - and hb_itemClone() - /* clone the given item */ - -2005-11-21 18:03 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - include/math.ch - + include/hbmath.ch - * include/hbmath.h - * tests/mathtest.prg - ! math.ch -> hbmath.ch (rename) - -2005-11-21 17:44 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - + tests/simplet.prg - * src/rtl/symbol.prg - * Embedded example code moved to the test dir. - - * src/rtl/math.c - * include/hbextern.ch - * tests/mathtest.prg - * doc/en/math.txt - ! HB_ prefix added for non-Clipper functions. - MATHERRMODE() -> HB_MATHERRMODE() - MATHERRORBLOCK() -> HB_MATHERRORBLOCK() - + Above two functions added to hbextern.ch - * HB_MATHERRMODE() input validation logic moved to the lower - level function. This is a step to make this a simple Set() - - * include/math.ch - + HB_ prefix added. - -2005-11-21 18:29 UTC+0200 Chen Kedem - * source/rtl/math.c - * Standardized public function names (to make HbExtern happy): - HB_FUNC (MATHERRMODE) --> HB_FUNC( MATHERRMODE ) - HB_FUNC (MATHERRORBLOCK) --> HB_FUNC( MATHERRORBLOCK ) - HB_FUNC (LOG) --> HB_FUNC( LOG ) - - * utils/hbextern/hbextern.prg - * Heavily modified to produce more accurate output - -2005-11-14 16:42 UTC+0100 Antonio Linares - * harbour/contrib/rdd_ads/makefile.vc - - removed module ads0 - -2005-11-19 00:30 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * include/hbapifs.c - * src/rtl/filesys.c - ! hb_fsSetDevMode() fixed back to return a BOOL value - to be compatible with the CA-Cl*pper undocumented - _tdevraw() function. (hb_fsSetDevMove() is mapped - to _tdevraw() in hbundoc.api, it's the documented - version of the same functionality) - Also fixed warning and error for one of the dummy - platform branches. - Since this came from xHarbour it pbly needs to be - fixed there too. - - * tests/Makefile - + symbolt.prg added - -2005-11-16 13:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/bin/pack_src.sh - * updated for nulsys.prg -> nulsys.c modification - -2005-11-16 13:14 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbvmpub.h - * changed definition of HB_SYMB structure. - HB_SYMBOLSCOPE cScope - replaced by: - union - { - HB_SYMBOLSCOPE value; /* the scope of the symbol */ - void * pointer; /* filler to force alignment */ - } scope; - This modification should only force the same alignment independently - on used compiler alignment switches or executed #pragma pack* - It's important to keep this structure with fixed size because it's - used in .c files generated from .prg code. - The code with #pragma pack* removed - it should not be longer - necessary but please make a real tests with different compiler - alignment switches - - * harbour/contrib/btree/hb_btree.c - * harbour/contrib/rdd_ads/ads1.c - * harbour/contrib/runjava/runjava.c - * harbour/source/compiler/genc.c - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/delim1.c - * harbour/source/rdd/sdf1.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbfdbt/dbfdbt1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/vm/dynsym.c - * harbour/source/vm/hvm.c - * harbour/source/vm/initsymb.c - * harbour/source/vm/runner.c - * updated for modified HB_SYMB structure. - -2005-11-15 05:10 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - * nulsys generation updated. - - * source/compiler/gencobj.c - ! Fixed warning. - - * source/rdd/rddord.prg - ! Fixed to include hbsetup.ch for HB_COMPAT_* guard - - * source/vm/hvm.c - ! Fixed warning. - - * make_b32.bat - - Removed "set BISON_SIMPLE" (was remmed) - -2005-11-14 20:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/common/expropt2.c - * casting - - * harbour/include/hbdate.h - + added hb_dateJulianDOW() - retrieve day of week from Julian's date - - * harbour/source/rtl/dates.c - * harbour/source/common/hbdate.c - * moved hb_dateDOW(), hb_dateDecStr() and hb_dateEncStr() to - hbdate.c - Ryszard I'd prefer to keep this function together - It will be much easier to update them. - + added HB_STR_DATE_BASE for conversion to string - Clipper - compatibility though we are not 100% Clipper compatible in STOD() - because we will have to reduce functionality (supported date - range) to reach it. In Clipper STOD(DTOS()) is not revertible. - I decided to make it revertible in [x]Harbour for the whole supported - in string conversion range: 0000/01/01 : 9999/01/01 - % optimized hb_dateEncode() - * some minor fixes for Clipper compatibility - - * harbour/source/rtl/dateshb.c - * use faster and Clipper compatible hb_dateJulianDOW() instead of - hb_dateDOW() - - * harbour/source/rdd/nulsys/Makefile - - harbour/source/rdd/nulsys/nulsys.prg - + harbour/source/rdd/nulsys/nulsys.c - * replaced .prg code with #pragma begindump/enddump by native C code - rtl/symbol.prg have to be updated yet. - - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * synced with xHarbour - -2005-11-14 20:50 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * hrbdll.vc - * makefile.nt - * makefile.vc - * makefile64.nt - * Change -o linker option to /OUT: to avoid warning with - MS Visual Studio 2005 compiler tools. - + Added -D_CRT_SECURE_NO_DEPRECATE to suppress the many - new MS warnings about unsafe function usage. - ; NOTE: MSVC 14.0 fails to compile macroy.c - ; NOTE: Still tons of warnings, but other than these it - compiles fine. - - * source/codepage/cdpsl437.c - ! Fixed wrong escape char (\ -> \\). - - * include/hbsetup.ch - * source/common/hbverdsp.c - + Added CLIP compatibility switch. - - * include/hbextern.ch - + Updated (somewhat). - - * source/rtl/strmatch.c - * source/rdd/rddord.prg - ! WILDMATCH() renamed to HB_WILDMATCH() - - * source/rdd/rddord.prg - ! ORDWILDSEEK() guarded with HB_COMPAT_XPP - - * source/rtl/seconds.c - ! SECONDSCPU guarded with HB_COMPAT_FLAGSHIP - -2005-11-14 9:01 UTC-0800 Luis Krause Mantilla - * hrbdll.bc - - removed references to delim0.prg/c - -2005-11-14 14:40 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) - * harbour/bin/bld.bat - + added references to hbsix.lib - - removed references to dbfdbt.lib - -2005-11-14 11:40 UTC+0100 Ryszard Glab - * source/compiler/harbour.y - * fixed 'type clash' warning in some bison version - -2005-11-14 11:10 UTC+0100 Ryszard Glab - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - * updated to compile source/common/hbdate.c - -2005-11-14 11:00 UTC+0100 Ryszard Glab - * include/hbcomp.h - * include/hberrors.h - * include/hbexpra.c - * include/hbexprb.c - * include/hbexprop.h - * include/hbhash.h - * include/hbmacro.h - * include/hbpcode.h - * source/common/Makefile - * source/common/expropt1.c - * source/common/expropt2.c - * source/common/hbhash.c - * source/compiler/expropta.c - * source/compiler/exproptb.c - * source/compiler/genc.c - * source/compiler/harbour.c - * source/compiler/harbour.l - * source/compiler/harbour.y - * source/compiler/hbfix.c - * source/compiler/hbgenerr.c - * source/compiler/hbident.c - * source/compiler/hbpcode.c - * source/macro/macro.l - * source/macro/macro.y - * source/macro/macroa.c - * source/macro/macrob.c - * source/rtl/dates.c - * source/vm/hvm.c - * source/vm/macro.c - + source/common/hbdate.c - + tests/ddate.prg - + tests/switch.prg - +added support for DATE type constants in the following format: - 0dYYYYMMDD - for example (see tests/ddate.prg for more): - IF( dDate > 0d20051112 ) - - +added support for SWITCH command (see tests/switch.prg) - SWITCH - CASE - ... - [EXIT] - CASE - ... - [EXIT] - [OTHERWISE] - ... - END - - Notice: - - Integer and string expressions can be mixed in a single - SWITCH command with no runtime errors; - - CASE expression have to be resolved at compile time and - the result has to be either an integer or string constant - - if there is no EXIT statement then next CASE is executed - (or OTHERWISE for the last CASE) - For example: - CASE 1+32+2*4 - CASE CHR(64) - CASE ASC('A') - CASE "A"+CHR(13) - - Notice: - The above changes apply only to FLEX version! - - -2005-11-13 21:21 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) - * harbour/contrib/ole/bldtest.bat - * harbour/contrib/ole/hbtest.prg - ! updated files - -2005-11-13 20:50 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) - * harbour/contrib/rdd_ads/makefile.bc - * harbour/contrib/rdd_ads/make_b32.bat - ! updated - synced with xHarbour - -2005-11-13 12:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/contrib/ole/ole2.c - * harbour/contrib/ole/oleauto.prg - ! fixed casting - - * harbour/contrib/rdd_ads/Makefile - * harbour/contrib/rdd_ads/ace.h - * harbour/contrib/rdd_ads/ads.ch - - harbour/contrib/rdd_ads/ads0.prg - * harbour/contrib/rdd_ads/ads1.c - * harbour/contrib/rdd_ads/adsfunc.c - * harbour/contrib/rdd_ads/adsmgmnt.c - * harbour/contrib/rdd_ads/rddads.h - * harbour/include/hbapirdd.h - * harbour/include/hbrddcdx.h - * harbour/include/hbrdddbf.h - * harbour/include/hbrdddbt.h - * harbour/include/hbrddfpt.h - * harbour/include/hbrddntx.h - * harbour/source/rdd/dbcmd.c - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/dbsort.prg - * harbour/source/rdd/dbstrux.prg - * harbour/source/rdd/dbtotal.prg - * harbour/source/rdd/hbdbsort.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * synced with xHarbour - - * harbour/include/hbcomp.h - * harbour/source/compiler/harbour.c - * harbour/source/compiler/hbgenerr.c - * harbour/source/compiler/hbpcode.c - * emit warning and error messages to stderr instead of stdout - Now it's enabled only for *nix platforms. - - * harbour/source/vm/extend.c - * allow hb_param() to return parameters accessed by HB_IT_BYREF - -2005-11-08 01:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/vm/garbage.c - - removed unnecessary memset() - - * harbour/source/vm/hvm.c - % use startup initialized symbols: hb_symEnumIndex, hb_symEnumBase, - hb_symEnumValue instead of strcmp( pSym->szName, ... ) in hb_vmSend() - % remove unnecessary temporary item in hb_vmEnumStart() and use - hb_itemMove() instead of hb_itemCopy()+hb_itemClear() - % changed main VM loop to eliminate one comparision done on each - loop. Now HB_P_ENDBLOCK and HB_P_ENDPROC pcodes set HB_ENDPROC_REQUESTED - and the main loop can be exited only from one place. It gives some - small but noticeable speed improvement. - Ryszard please check this modification. AFAIK it should not cause - any bad side effect and IMHO the code is cleaner now. - - * harbour/source/vm/itemapi.c - % removed two unnecessary hb_itemClear() before hb_itemRelease() - -2005-11-07 14:35 UTC+0100 Ryszard Glab - * include/hbapi.h - * include/hbapiitm.h - * include/hbcomp.h - * include/hberrors.h - * include/hbexpra.c - * include/hbpcode.h - * include/hbsetup.h - * source/common/expropt1.c - * source/compiler/expropta.c - * source/compiler/genc.c - * source/compiler/gencli.c - * source/compiler/harbour.c - * source/compiler/harbour.l - * source/compiler/harbour.y - * source/compiler/hbfix.c - * source/compiler/hbgenerr.c - * source/compiler/hbpcode.c - * source/macro/macroa.c - * source/vm/hvm.c - * source/vm/itemapi.c - + tests/foreach.prg - + added support for FOR EACH loop - FOR EACH var1 [,var255] IN expr1 [,expr255] [DESCEND] - NEXT - - Note: - -expr can be a string or an array - if it is a string then assigments to the control - variable does not change the string - -after the loop the controlling variable(s) store the - value which they had before entering the loop - -the controlling variable supports the following properties - :__enumindex - the loop counter for variable - :__enumbase - the value that is being traversed - :__enumvalue - the value of variable - -see tests/foreach.prg for examples - - + added warnings in cases of duplicated loop variables - eg. FOR i:=1 TO 5 - FOR i:=i TO i+5 - - -removed strong typing in the compiler (xHarbour too) - (reactivate it by compiling with -DHB_COMP_STRONG_TYPES) - -NOTE: - The new pcodes were added - rebuild everything - - -2005-11-04 22:19 UTC+0100 Antonio Linares - * harbour/source/vm/estack.c - * hb_UnhandledExceptionFilter() modified to return EXCEPTION_CONTINUE_SEARCH - - NOTICE: When returning EXCEPTION_CONTINUE_SEARCH then both Microsoft and Borland - behave the same way, and the Windows GPF dialogbox is finally shown, which - it is quite usefull to locate the GPF address (on a MAP file). - -2005-11-04 12:41 UTC+0100 Antonio Linares - * harbour/source/vm/mainwin.c - * SetUnhandledExceptionFilter() is called if HB_INCLUDE_WINEXCHANDLER define is used - - * harbour/source/vm/estack.c - * UnhandledExceptionFilter renamed as hb_UnhandledExceptionFilter, and - WINBASEAPI removed. - -2005-11-03 10:42 UTC+0100 Antonio Linares - + added Microsoft initialization code - harbour/source/lang/msgcs852.c - harbour/source/lang/msgcsiso.c - harbour/source/lang/msgcskam.c - harbour/source/lang/msgcswin.c - harbour/source/lang/msgde.c - harbour/source/lang/msgdewin.c - harbour/source/lang/msgel.c - harbour/source/lang/msgelwin.c - harbour/source/lang/msgen.c - harbour/source/lang/msgeo.c - harbour/source/lang/msges.c - harbour/source/lang/msgeswin.c - harbour/source/lang/msgeu.c - harbour/source/lang/msgfr.c - harbour/source/lang/msggl.c - harbour/source/lang/msghr852.c - harbour/source/lang/msghriso.c - harbour/source/lang/msgid.c - harbour/source/lang/msgis850.c - harbour/source/lang/msgit.c - harbour/source/lang/msgko.c - harbour/source/lang/msgpt.c - harbour/source/lang/msgro.c - harbour/source/lang/msgru866.c - harbour/source/lang/msgrukoi.c - harbour/source/lang/msgruwin.c - harbour/source/lang/msgsl437.c - harbour/source/lang/msgsl852.c - harbour/source/lang/msgsliso.c - harbour/source/lang/msgslwin.c - harbour/source/lang/msgsr852.c - harbour/source/lang/msgsriso.c - harbour/source/lang/msgsrwin.c - harbour/source/lang/msgzhb5.c - harbour/source/lang/msgzhgb.c - -2005-11-02 07:32 UTC+0100 Antonio Linares - * makefile.nt - * makefile64.nt - + added references to new files. - -2005-11-02 01:56 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) - * harbour/makefile.bc - + added references to harbour/source/common/hbarch.c - + added references to harbour/source/rtl/fserror.c - -2005-11-01 23:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/make_gnu.sh - + harbour/make_xmingw.sh - * harbour/bin/hb-mkslib.sh - * harbour/bin/postinst.sh - * harbour/config/w32/mingw32.cf - * added support for cross compilation (Windows binaries at Linux) with - MinGW - borrowed from xHarbour Phil Krylov solution - - * harbour/contrib/btree/hb_btree.c - * casting - - * harbour/contrib/libct/files.c - ! fixed iAttr initialization in SETFATTR() - - * harbour/contrib/ole/ole2.c - ! fixed names of included files - - * harbour/contrib/rdd_ads/ace.h - * cover #pragma warning( error : 4706 ) by !defined( __GNUC__ ) - - * harbour/include/hbapi.h - * harbour/include/hbdefs.h - + harbour/source/common/hbarch.c - * harbour/source/common/Makefile - * added functions for machine independent double and long long conversions - (my code borrowed from xHarbour) - - * harbour/include/hbapifs.h - * synced file IO with xHarbour - it fixes some problems, adds some - missing functionality and long (64bit) file support for Windows. - For Linux I added it some time ago. - - * harbour/include/hbcomp.h - * changed 'char cScope' to 'HB_SYMBOLSCOPE cScope' - - * harbour/source/common/hbfsapi.c - ! fixed some possible buffer overflow - - * harbour/source/common/hbstr.c - * synced with xHarbour - - * harbour/source/common/hbver.c - + added hb_iswinnt() (borrowed from xHarbour) - - * harbour/source/compiler/cmdcheck.c - + added -undef: compiler switch (borrowed from xHarbour) - - * harbour/source/compiler/gencobj.c - * cleanup - - * harbour/source/pp/ppcore.c - ! fixed path delimiters in included file names - - * harbour/source/rtl/Makefile - + harbour/source/rtl/fserror.c - + added C -> OS file error trnalsations - not perfect but better then - the used hacks (borrowed from xHarbour) - - * harbour/source/rtl/file.c - * use hb_fileNameConv() instead of hb_filecase() - hb_fileNameConv() - is the only one function to make file name conversions dependent on - some SETs. - - * harbour/source/rtl/filesys.c - * synced file IO with xHarbour - it fixes some problems, adds some - missing functionality and long (64bit) file support for Windows. - For Linux I added it some time ago. - - * harbour/source/rtl/fstemp.c - * synced with xHarbour - - * harbour/source/rtl/strings.c - * use ULONG instead of size_t in hb_strnicmp declaration - we have to - decide what we should use. Using size_t or its Harbour version f.e. - HB_SIZE_T seems to be reasonable but it has to be global - redefining - single functions does not make sense and will create troubles only. - -2005-10-31 14:38 UTC+0100 Antonio Linares - * makefile.nt - * makefile64.nt - - Some files removed cause recent changes: - harbour/source/rdd/dbf0.prg - harbour/source/rdd/delim0.prg - harbour/source/rdd/sdf0.prg - harbour/source/rdd/dbfcdx/dbfcdx0.prg - harbour/source/rdd/dbfcdx/sixcdx0.prg - harbour/source/rdd/dbfdbt/dbfdbt0.prg - -2005-10-30 14:50 UTC+0200 Chen Kedem - * doc/dirstruc.txt - + Add oneliner description for: source/rdd/hbsix, source/rdd/hsx - - * doc/en/lang.txt - + Added the following to HB_LANGSELECT() list of supported ID's: - BG866, BGISO, BGWIN, HUISO - + Added the following to HB_SETCODEPAGE() list of supported ID's: - BG866, BGISO, BGWIN, ESMWIN, HUISO - * Change the following to HB_SETCODEPAGE() list of supported ID's: - PT --> PT850, RUWIN --> RU1251 - - * source/lang/msghe862.c - * source/lang/msghewin.c - * Update startup code to work with MSC - -2005-10-28 10:23 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - * include/hbapicdp.h - * source/codepage/Makefile - * source/codepage/cdphu852.c - * source/lang/Makefile - * source/lang/msg_tpl.c - * source/lang/msghu852.c - + source/codepage/cdpbg866.c - + source/codepage/cdpbgiso.c - + source/codepage/cdpbgwin.c - + source/codepage/uc8859_5.c - + source/lang/msgbg866.c - + source/lang/msgbgiso.c - + source/lang/msgbgwin.c - + Added BG language support. - * HU minor fix. - * Lang template updated. - -2005-10-24 15:09 UTC+0200 Jacek Kubica (kubica/at/wssk.wroc.pl) - * harbour/makefile.bc - - Remove references to: - harbour/source/rdd/dbf0.prg - harbour/source/rdd/delim0.prg - harbour/source/rdd/sdf0.prg - harbour/source/rdd/dbfcdx/dbfcdx0.prg - harbour/source/rdd/dbfcdx/sixcdx0.prg - harbour/source/rdd/dbfdbt/dbfdbt0.prg - -2005-10-24 14:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/makefile.bc - * BCC make file updated by Jacek Kubica - -2005-10-24 13:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbapi.h - * harbour/include/hbapiitm.h - * harbour/include/hbapirdd.h - * harbour/include/hbdefs.h - * harbour/include/hbtypes.h - * harbour/source/rtl/empty.c - * harbour/source/vm/arrays.c - * harbour/source/vm/extend.c - * harbour/source/vm/hvm.c - * harbour/source/vm/itemapi.c - * harbour/source/vm/maindllp.c - + added HB_TYPE to as HB_ITEM type marker. - * set HB_TYPE as UINT32 - * updated to the above modifications - * cleaned some ~HB_IT_BYREF which has no effect in current VM - -2005-10-24 12:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbtypes.h - * harbour/source/vm/maindllp.c - ! fixed some declaration I missed in previous commit - -2005-10-24 12:08 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - * source/codepage/Makefile - * source/codepage/cdphu852.c - + source/codepage/cdphuiso.c - * source/codepage/cdphuwin.c - * source/lang/Makefile - * source/lang/msghu852.c - * source/lang/msghucwi.c - + source/lang/msghuiso.c - * source/lang/msghuwin.c - * HU lang stuff updated. ISO cp added (same as Win cp). Minor fixes - (not related to functionality) added. - -2005-10-24 02:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/contrib/dot/pp.prg - * harbour/contrib/dot/pp_harb.ch - * harbour/include/hbapi.h - * harbour/include/hbapirdd.h - * harbour/include/hbdefs.h - * harbour/include/hbextern.ch - * harbour/include/hbinit.h - * harbour/include/hbstack.h - * harbour/include/hbsxfunc.h - * harbour/include/hbvm.h - + harbour/include/hbvmopt.h - * harbour/include/hbvmpub.h - * harbour/source/codepage/cdp_tpl.c - * harbour/source/codepage/cdppl852.c - * harbour/source/codepage/cdppliso.c - * harbour/source/codepage/cdpplmaz.c - * harbour/source/codepage/cdpplwin.c - * harbour/source/compiler/genc.c - * harbour/source/compiler/harbour.c - * harbour/source/lang/msgca.c - * harbour/source/lang/msgpl852.c - * harbour/source/lang/msgpliso.c - * harbour/source/lang/msgplmaz.c - * harbour/source/lang/msgplwin.c - * harbour/source/rdd/Makefile - * harbour/source/rdd/dbcmd.c - - harbour/source/rdd/dbf0.prg - * harbour/source/rdd/dbf1.c - - harbour/source/rdd/delim0.prg - * harbour/source/rdd/delim1.c - * harbour/source/rdd/rddsys.prg - - harbour/source/rdd/sdf0.prg - * harbour/source/rdd/sdf1.c - * harbour/source/rdd/dbfcdx/Makefile - - harbour/source/rdd/dbfcdx/dbfcdx0.prg - * harbour/source/rdd/dbfcdx/dbfcdx1.c - - harbour/source/rdd/dbfcdx/sixcdx0.prg - * harbour/source/rdd/dbfdbt/Makefile - - harbour/source/rdd/dbfdbt/dbfdbt0.prg - * harbour/source/rdd/dbfdbt/dbfdbt1.c - * harbour/source/rdd/dbffpt/Makefile - - harbour/source/rdd/dbffpt/dbffpt0.prg - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/Makefile - * harbour/source/rdd/dbfntx/dbfntx0.prg - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/rdd/hbsix/Makefile - * harbour/source/rdd/hbsix/sxcompr.c - * harbour/source/rdd/hbsix/sxcrypt.c - * harbour/source/rdd/hbsix/sxdate.c - * harbour/source/rdd/hsx/hsx.c - * harbour/source/rdd/nulsys/nulsys.prg - * harbour/source/rtl/browdbx.prg - * harbour/source/rtl/cdpapi.c - * harbour/source/vm/arrays.c - * harbour/source/vm/arrayshb.c - * harbour/source/vm/asort.c - * harbour/source/vm/break.c - * harbour/source/vm/classes.c - * harbour/source/vm/cmdarg.c - * harbour/source/vm/codebloc.c - * harbour/source/vm/debug.c - * harbour/source/vm/dynlibhb.c - * harbour/source/vm/dynsym.c - * harbour/source/vm/estack.c - * harbour/source/vm/eval.c - * harbour/source/vm/evalhb.c - * harbour/source/vm/extend.c - * harbour/source/vm/fm.c - * harbour/source/vm/garbage.c + - harbour/source/codepage/cdpptiso.c - harbour/source/codepage/cdpru866.c - * harbour/source/vm/initsymb.c - * harbour/source/vm/itemapi.c - * harbour/source/vm/macro.c - * harbour/source/vm/maindllp.c - * harbour/source/vm/memvars.c - * harbour/source/vm/memvclip.c - * harbour/source/vm/pcount.c - * harbour/source/vm/proc.c - * harbour/source/vm/pvalue.c - * harbour/source/vm/runner.c - * remove default API and stack macros. Now API/stack macros can be - enabled by including hb_vmopt.h file. - This file should be included _ONLY_ by core code because binary - object/libraries generated after can work only with _EXACTLY_ the - same HVM compiled the same C alignment switches - * cleaned some HB_EXTERN_C declaration - Anotonio you should be able - to build FWH now - * cleaned startup initialization code - - please update lang and codepage files - I only updated - source/codepage/cdppl*.c and source/lang/msgpl*.c files - Or other files should be updated or they will not work MSC - * synced with recent xHarbour modification in RDD init code - -2005-10-23 09:05 UTC+0100 Antonio Linares - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/hbsix/sxcompr.c - * harbour/source/rdd/hbsix/sxcrypt.c - * harbour/source/rdd/hsx/hsx.c - + Minor fix to support define HB_NO_DEFAULT_API_MACROS (if used) - required by Microsoft compiler - - IMPORTANT: Now Harbour properly builds using Microsoft compiler and - define HB_NO_DEFAULT_API_MACROS, but applications fail to start, showing - this error: - Unrecoverable error 9004: RDD invalid or failed to load - Called from DBFFPTINIT(62) - - Using Borland and the same define, all compiles and works ok. - - We need to discover why such error raises using Microsoft compiler and that - define. - -2005-10-21 08:40 UTC+0100 Antonio Linares - * makefile.nt - + minor fix. - -2005-10-12 02:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/config/global.cf - + added HB_DB_DRVEXT envvar support for additional RDDs + - harbour/source/codepage/cdprukoi.c - harbour/source/codepage/cdpruwin.c - * harbour/config/linux/gcc.cf - + harbour/config/linux/gpp.cf - + added GNU C++ support + - harbour/source/codepage/cdpsl437.c + - harbour/source/codepage/cdpsl852.c + - harbour/source/codepage/cdpsliso.c - harbour/source/codepage/cdpslwin.c - * harbour/config/linux/owatcom.cf - * harbour/contrib/btree/hb_btree.c - * harbour/contrib/libct/ct.h - * harbour/contrib/libct/ctc.c - * harbour/contrib/odbc/odbc.c - * harbour/contrib/rdd_ads/adsfunc.c - * harbour/include/hbapi.h - * harbour/include/hbapierr.h - * harbour/include/hbapigt.h - * harbour/include/hbapilng.h - * harbour/source/compiler/harbour.c - * harbour/source/rtl/console.c - * harbour/source/rtl/datec.c - * harbour/source/rtl/diskspac.c - * harbour/source/rtl/errorapi.c - * harbour/source/rtl/errorint.c - * harbour/source/rtl/filesys.c - * harbour/source/rtl/fssize.c - * harbour/source/rtl/fstemp.c - * harbour/source/rtl/gtapi.c - * harbour/source/rtl/isprint.c - * harbour/source/rtl/natmsg.c - * harbour/source/rtl/philes.c - * harbour/source/rtl/setcolor.c - * harbour/source/rtl/spfiles.c - * harbour/source/rtl/gtcrs/gtcrs.c - * harbour/source/rtl/gtsln/gtsln.c - * harbour/source/rtl/gtsln/kbsln.c - * harbour/source/vm/itemapi.c - * harbour/source/vm/memvars.c - * harbour/source/vm/runner.c - * fixed for popper compilation with GNU C++ and OpenWatcom on Linux - -2005-10-05 15:05 UTC+0100 Ryszard Glab - * source/common/expropt2.c - * fixed bug in ASC() optimization (when character code > 127) - - -2005-10-05 03:08 UTC-0500 David Arturo Macias Corona - * harbour/include/hbextern.ch - ! added missing declarations: - DBRELATION, DBRSELECT, MENUMODAL, _PUSHBUTT_, _LISTBOX_ - * harbour/contrib/mysql/tmysql.prg - ! added conversion from tiny int MySQL type into numeric DBF. (an error before). - Supplied by Mitja Podgornik - - -2005-09-28 13:05 UTC+0100 Ryszard Glab - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - - removed references to DBFDBT library - - * source/debug/dbgtmenu.prg - * source/debug/dbgtmitm.prg - * source/debug/dbgtwin.prg - * source/debug/debugger.prg - * source/rtl/alert.prg - * fixed displaying of boxes under the xterm - (use @ ... TO ... instead of @ ... BOX) - - * source/rtl/gtcrs/gtcrs.c - * fixed restoring of alternate characters flag - - -2005-09-27 15:10 UTC-0800 Luis Krause Mantilla - * harbour/contrib/rdd_ads/adsfunc.c - ! added missing functions hb_oemansi & hb_ansioem required with - the recent sycn by Ryzard - * harbour/contrib/rdd_ads/ads.ch - ! updated comment on how to use ADS_REQUIRED_VERSION manifest constant - -2005-09-26 12:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * xharbour/source/rdd/dbcmd.c - ! fixed bug I introduced in RDDLIST() - -2005-09-25 21:40 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - harbour/source/codepage/cdpsrwin.c - * harbour/make_tgz.sh * Renamed codepage files (cdp*.c -> cd*.c) - * harbour/bin/pack_src.sh - * harbour/config/global.cf - * harbour/include/hbapiitm.h - * harbour/include/hbdate.h - * harbour/include/hbextern.ch - * harbour/source/rdd/dbcmd.c - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/workarea.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/rtl/dates.c - * harbour/source/vm/itemapi.c - * updated for proper RDD synchronization with xHarbour + * Updated init code for all remaining codepages. - * harbour/source/vm/hvm.c - ! fixed bug in divide by 0 substitution - - * harbour/contrib/rdd_ads/ads0.prg - * harbour/contrib/rdd_ads/ads1.c - * harbour/contrib/rdd_ads/adsfunc.c - * harbour/contrib/rdd_ads/rddads.h - * synced base of ADS RDD with xHarbour - old code cannot be compiled - without it - external ADS*() functions not synced - I do not use them - and I do not want to break sth - Harbour ADS developers should check it - -2005-09-23 15:05 UTC+0100 Ryszard Glab - * include/hbextern.ch - * removed reference to SDFC and DELIMC - * source/rdd/dbcmd.c - * removed definition of DBSKIPPER function (it is defined - already in rtl/browdbx.prg) - - -2005-09-23 13:45 UTC+0100 Ryszard Glab - * makefile.bc - * makefile.nt - * makefile.vc - * makefile64.nt - * updated build files for non-GNU make engines - - -2005-09-23 15:45 UTC+0100 Ryszard Glab - * config/global.cf - * include/dbinfo.ch - * include/hbapi.h - * include/hbapierr.h - * include/hbapifs.h - * include/hbapirdd.h - * include/hbdbf.h - * include/hbdbferr.h - * include/hbdefs.h - * include/hbrddcdx.h - * include/hbrdddbf.h - * include/hbrdddbt.h - * include/hbrdddel.h - * include/hbrddfpt.h - * include/hbrddntx.h - * include/hbrddsdf.h - * include/hbrddwrk.h - * include/hbvm.h - * source/common/hbstr.c - * source/rdd/Makefile - * source/rdd/dbcmd.c - * source/rdd/dbf1.c - * source/rdd/dbtotal.prg - * source/rdd/delim0.prg - * source/rdd/delim1.c - * source/rdd/rddsys.prg - * source/rdd/sdf0.prg - * source/rdd/sdf1.c - * source/rdd/workarea.c - * source/rdd/dbfcdx/Makefile - * source/rdd/dbfcdx/dbfcdx0.prg - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbfdbt/Makefile - * source/rdd/dbfdbt/dbfdbt1.c - * source/rdd/dbffpt/Makefile - * source/rdd/dbffpt/dbffpt0.prg - * source/rdd/dbffpt/dbffpt1.c - * source/rdd/dbfntx/Makefile - * source/rdd/dbfntx/dbfntx0.prg - * source/rdd/dbfntx/dbfntx1.c - * source/rdd/nulsys/nulsys.prg - * source/rtl/errorapi.c - * source/rtl/filesys.c - * source/vm/dynsym.c - * source/vm/extend.c - * source/vm/itemapi.c - * source/vm/hvm.c - + include/hbsxfunc.h - + source/rdd/dbfcdx/sixcdx0.prg - + source/rdd/dbfcdx/sixcdx1.c - + source/rdd/hbsix/Makefile - + source/rdd/hbsix/sxcompr.c - + source/rdd/hbsix/sxcrypt.c - + source/rdd/hbsix/sxdate.c - + source/rdd/hsx/Makefile - + source/rdd/hsx/cftsfunc.c - + source/rdd/hsx/hsx.c - * changes to synhronize RDD code with xHarbour (state of 23.09.2005) - Many, many thanks to Przemek Czerpak for his work. - - -2005-09-20 10:16 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/rtl/tget.prg - ! One previous fix reverted because it broke numeric data entry. - Solved from caller side for the meantime. TOFIX added. - -2005-08-23 22:01 UTC-0400 Alejandro de Garate - - + doc\linux1st.txt - Added Linux primer written by Scott Johnson - -2005-08-23 18:45 UTC-0400 Alejandro de Garate - - * source\rtl\scrollbr.prg - * Fixed length in Style string (more than 4 characters) - - Eliminated unused LOCAL vars in Hitest() - - Deleted unused method GetColor() - + Added METHOD SetStyle( cStyle ) to change SB characters at runtime - + Added METHOD SetColor( cColor ) to change SB colors at runtime - * fixed bugs, minor optimizations - -2005-08-23 18:45 UTC-0400 Alejandro de Garate - - + tests\sbartest.prg - Added sample of scrollbar class - -2005-06-14 21:11 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/rtl/disksphb.c - * hb_DiskSpace() changed to not give a runtime error in case - of any error, but set the FError() value instead. - - * config/bsd/global.cf - * config/darwin/global.cf - * config/dos/global.cf - * config/dos/owatcom.cf - * config/hpux/global.cf - * config/linux/global.cf - * config/linux/owatcom.cf - * config/os2/dir.cf - * config/os2/global.cf - * config/os2/install.cf - * config/sunos/global.cf - * config/w32/global.cf - ! Changed all line beginning spaces to Tabs. - -2005-06-11 13:01 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/rtl/idle.c - ! Fix to prev. commit. - -2005-06-09 18:09 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/rtl/tget.prg - ! :display fixed (again) to always call VarGet block - to be CA-Cl*pper compatible. - - * config/w32/global.cf - ! Fixed to properly create the obj directories when compiling - using GCC under XP. This broke in the near past. - - * source/pp/ppcore.c - ! Fixed two compiler warnings. - ; Please review one of them if you made the change, since - I'm not sure what the intention was, here's the code snippet: - - ... - lenreal = IsMacroVar( *ptri, com_or_tra ); /* THIS LINE IS NOW COMMENTED OUT */ - *ptri +=1; - lenreal = getExpReal( expreal+2, ptri, FALSE, maxlenreal, FALSE ); - ... - - * source/codepage/cdphu852.c - ! HU sorting order fixed to be more compatible with CA-Cl*pper. - (Still missing some non-852 chars though) - - * source/common/hbver.c - ! Fixed forming NT version number (5.01.2600 -> 5.1.2600) - - * source/compiler/hbusage.c - + Copyright year updated. - - * source/rtl/idle.c - * Cleaned up a platform dependent code part. - -2005-05-25 09:55 UTC+0300 Alexander Kresin - * include/hbver.h - * doc/whatsnew.txt - * harbour.spec - * Release info has been changed for release 45. - -2005-05-15 11:04 UTC+0300 Chen Kedem - * doc/dirstruc.txt - + Add oneliner description for: config/hpux - -2005-05-15 10:42 UTC+0300 Chen Kedem - * doc/whatsnew.txt - + Add information about the upcoming alpha build 45 written by - Alejandro de Garate - + Add historic information about the old OpenClipper - builds 6, 7, 8 and 9 I had found on Google - -2005-05-07 17:01 UTC+0100 Antonio Linares - * makefile64.nt - + bufferoverflowu.lib added to LDFLAGS as per new Microsoft C 64 - compiler (PSDK April 2005) requirement. - - * hbdate.h - * hbapifs.h - + HB_EXPORT added to those functions that already were using it, - as per new Microsoft C 64 compiler (PSDK April 2005) requirement. - -2005-04-29 16:00 UTC+0100 Antonio Linares - * makefile64.nt - * -D__64__ removed. No longer needed. - -2005-04-29 15:54 UTC+0100 Antonio Linares - * include/hbinit.h - * __64__ changed into Microsoft C 64 built-in _WIN64 - -2005-04-29 15:46 UTC+0100 Antonio Linares - * include/hbdefs.h - * fixed for Windows 64, using Microsoft C provided _WIN64 define - Changes provided by Przemek. Thanks! :-) - -2005-04-29 07:02 UTC+0100 Antonio Linares - * makefile64.nt - * __64__ define declared - * include/hbinit.h - * __64__ define use to detect building for 64 bits when using Microsoft C compiler - - Please notice that Microsoft C 64 compiler is a cross compiler that works as a 32 bits - application, so this is the only way found by now to detect we want to build for 64 bits. - - -2005-04-29 06:08 UTC+0100 Antonio Linares - + make_vc64.bat - + makefile64.nt - * make files for Microsoft C 64 bits - -2005-04-18 00:15 UTC+0100 Antonio Linares - * source/rtl/gtwin/gtwin.c - * 64 bits support - temporary minor workarounds - -2005-04-18 00:10 UTC+0100 Antonio Linares - * include/hbdefs.h - * fixed typo on used USHORT_MAX instead of USHRT_MAX - as per advise from Przemek. - -2005-04-18 22:52 UTC+0100 Antonio Linares - * include/hbstack.h - * two minor changes required for 64 bits support - as per advise from Przemek. It is a general solution for the fix - implemented yesterday. - -2005-04-17 ??:?? UTC+0100 Antonio Linares - * source/vm/hvm.c - * minor change required for 64 bits support. - -2005-03-18 11:45 UTC+0100 Ryszard Glab - - * config/dos/global.cf - *restored creation of subdirectiories under plain DOS - - * include/hbapi.h - * include/hbcomp.h - * include/hbdefs.h - * include/hbvm.h - * source/compiler/genc.c - * source/compiler/harbour.c - * source/compiler/hbpcode.c - * source/vm/dynsym.c - * source/vm/hvm.c - * source/vm/macro.c - *modified creation of symbols table - *symbol of function name never share a symbol of variable - *symbol for INIT/EXIT procedure has now '$' suffix - this means - that such procedures cannot be called from user code - (Clipper compatible) - See the following code: - PROCEDURE MAIN - aaa() - RETURN - INIT PROCEDURE aaa - ? "In INIT procedure", PROCNAME(0) - RETURN - STATIC PROCEDURE aaa - ? "In STATIC procedure", PROCNAME(0) - RETURN - It will print: - In INIT procedure aaa$ - In STATIC procedure aaa - - *fixed access to static functions in a macro compiler (symbols for - static functions never goes into dynamic symbols table) - - * source/pp/ppcore.c - *increased numer of nested optional clauses (max 5 currently - work - in progress) - -2005-02-16 13:52 UTC+0100 Antonio Linares - * source/vm/classes.c - hb_objGetpMethod() compiled as extern "C" for MSVC compatibility with xHarbour - -2005-02-01 21:05 UTC+0100 Tomaz Zupan - * harbour.spec - Returned optimization to O3. Problems with Mandrake/gcc - are fixed in Mdk 10.1 with gcc 3.4. - (see ChangeLog 2004-07-18 19:50 UTC+0200 Tomaz Zupan) - -2005-02-01 20:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/vm/memvars.c - * fixed public releasing - fix borrowed from xHarbour - Ryszard please check if it doesn't cause any bad side effects. - The following code demonstrate the problem. - - =========================================== - memvar x, y, z - proc main() - local l := { || x } - public x := "QWE" - private z := "asd" - Errorblock( { | oError | errHandler( oError ) } ) - ? eval( l ) - test() - ? x - ? z - ? eval( l ) - return - - proc test() - private y := "xyz" - release x, y, z - ? x - ? y - ? z - return - - func errHandler( oErr ) - local varName := oErr:operation() - public &varName := oErr:description() + ": " + varName - return .t. - =========================================== - -2005-01-31 20:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rdd/dbf1.c - * fixed possible GPF I introduced with last update. - -2005-01-30 22:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/contrib/rdd_ads/ace.h - * small modification for OpenWatcom on Linux - - * harbour/source/rdd/dbfntx/dbfntx1.c - * minor fix: use *_GOTO( pArea, 0 ) instead - of *_GOTO( pArea, pArea->ulRecCount+1000 ) - + use hb_fsSeekLarge() - for DBFs longer then 2GB - - * harbour/include/hbrddcdx.h - * harbour/source/rdd/dbfcdx/dbfcdx1.c - + use hb_fsSeekLarge() - for DBFs longer then 2GB - * my last xHarbour modifications: - improved indexing speed of DBFs with very big number of - records. In small DBFs less then 100'000 records the new - algorithm can even decrease the speed by ~0.5% due to static - costs but in bigger it becomes faster. For 1'000'000 records - DBFs is about 20% faster, for 10'000'000 records about twice - faster. With bigger DBFs more. Please test it. If you will - have any troubles (I hope not) then please comment out in - dbfcdx.c: - #define HB_CDX_NEW_SORT - I should done it before when I was rewriting the indexing but - sorry I was too lazy. Now I've found a while. Current cost of - key comparisons is always n*log2(n) and cannot be more improved. - Some small optimizations still can be done but the static cost - for small database will be bigger then ~0.5% as in this case - so I do not plan to do it in the nearest future. - - * harbour/include/dbinfo.ch - * harbour/source/rdd/dbf1.c - + use hb_fsSeekLarge() - for DBFs longer then 2GB - * synched with xHarbour (added DBRI_RAW*) - * do not call GOCOLD() inside CHILDSYNC() but do it in FORCEREL() - the modification based on CL5.3 NG. - Below is a note I lef in dbf1.c: - /* - * !!! The side effect of calling GOCOLD() inside CHILDSYNC() is - * evaluation of index expressions (index KEY and FOR condition) - * when the pArea is not the current one - it means that the - * used RDD has to set proper work area before eval, DBFCDX does - * but DBFNTX not yet - it should be changed. - * IMHO GOCOLD() could be safely removed from this place but I'm not - * sure it's Clipper compatible - I will have to check it, Druzus. - */ - /* - * I've checked in CL5.3 Technical Reference Guide that only - * FORCEREL() should ensure that the work area buffer is not hot - * and then call RELEVAL() - I hope it describes the CL5.3 DBF* RDDs - * behavior so I replicate it - the GOCOLD() is moved from CHILDSYNC() - * to FORCEREL(), Druzus. - */ - - * harbour/source/rdd/dbf0.prg - * harbour/source/rdd/delim0.prg - * harbour/source/rdd/rddsys.prg - * harbour/source/rdd/sdf0.prg - * harbour/source/rdd/dbfntx/dbfntx0.prg - * formatting (adding EOL at EOF) - - * harbour/include/hbapifs.h - * harbour/source/rtl/filesys.c - * added hb_fsLockLarge() and hb_fsSeekLarge() which uses 64bit ofsets - - * harbour/source/rdd/workarea.c - * set current work area to the used one in EVALBLOCK RDD method - before code block evaluation - - * harbour/source/vm/harbinit.prg - * harbour/source/vm/hvm.c - + added hb_vmDoInitClip() which calls CLIPINIT function to initialize - ErrorBlock() and __SetHelpK() - Because on some platform the execution order of init functions - is out of Harbour control then CLIPINIT has to be called explicitly - in VM initialization process before hb_vmDoInitFunctions() and do not - depends on INIT clause. - * small modification in VM loop which gives noticeable speed-up - -2005-01-23 09:05 UTC+0100 Antonio Linares - * makefile.nt - + hbverdsp.obj module added to makefile.nt - -2005-01-22 23:40 UTC+0300 Alexander Kresin - * source/rdd/dbfntx/dbfntx1.c - ! Yet another rare bug fixed. - -2005-01-22 19:55 UTC+0300 Alexander Kresin - * source/rdd/dbfntx/dbfntx1.c - ! Bug fixed, which oocured in some rare situations while record updating. - -2005-01-13 09:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rtl/mod.c - ! fixed mod() function to be Clipper/DBASE III compatible - (not the % operator) for combination of psitive and negative - numbers - - -2005-01-13 08:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - + harbour/include/hbfixdj.h - + I missed to add this file in my last commit - it's borrowed from - xHarbour. - * harbour/source/rtl/filesys.c - ! fixed DJGPP compilation I broke - - -2005-01-12 18:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/hbgtmk.sh - * harbour/make_rpm.sh - * harbour/harbour.spec - * added flex to dependences - * added --without gpl swich to exclude code which needs 3-rd party - GPL libs (GPM, SLANG) - necessary for people who want to create - commercial closed source application - - * harbour/make_gnu.sh - * modified DJGPP detection - try to use env var first - * set HB_GT_LIB depending on platform information - * check PREFIX env var for default installation - - * harbour/make_tgz.sh - * modified to work with DJGPP and 8.3 file names - - * harbour/bin/hb-func.sh - * DJGPP support - - * harbour/bin/pack_src.sh - * autodetect Harbour version number - - * harbour/config/linux/gcc.cf - * added small comment - - + harbour/config/linux/owatcom.cf - + OpenWatcom support on Linux - - * harbour/config/w32/global.cf - * harbour/config/w32/mingw32.cf - * small modification in clean procedure - + added Phil's modification for MINGW cross compilation in Linux and BSD - - * harbour/source/compiler/gencobj.c - + added Phil's modification for MINGW cross compilation in Linux and BSD - - * harbour/include/hbsetup.h - * added OS_HAS_DRIVE_LETTER, OS_PATH_DELIMITER_STRING, OS_FILE_MASK, - OS_DRIVE_DELIMITER and HOST_OS_UNIX_COMPATIBLE - * modified for OW on Linux and MINGW cross compilation - * added snprintf macro for compilers which do not support it - - * harbour/source/rtl/mod.c - ! fixed bug in mod(a,b) when a/b exceeds LONG limit - - * harbour/source/rtl/filesys.c - * removed HB_FS_DRIVE_LETTER - use OS_HAS_DRIVE_LETTER - * modified for OW on Linux and MINGW cross compilation - - * harbour/contrib/libct/files.c - * harbour/include/hb_io.h - * harbour/include/hbdefs.h - * harbour/source/rtl/diskspac.c - * harbour/source/rtl/disksphb.c - * harbour/source/rtl/fssize.c - * harbour/source/rtl/fstemp.c - * harbour/source/rtl/hbffind.c - * harbour/source/rtl/net.c - * harbour/source/rtl/seconds.c - * harbour/source/rtl/gtcrs/Makefile - * harbour/source/rtl/gtcrs/kbdcrs.c - * harbour/source/rtl/gtpca/gtpca.c - * harbour/source/rtl/gtsln/Makefile - * harbour/source/rtl/gtsln/gtsln.c - * harbour/source/rtl/gtsln/kbsln.c - * harbour/source/rtl/gtstd/gtstd.c - * harbour/source/vm/hvm.c - * harbour/source/vm/mainstd.c - * harbour/source/vm/mainwin.c - * modified for OW on Linux and MINGW cross compilation - - * harbour/source/vm/memvars.c - - removed unnecessary checking for s_globalTable == NULL in - hb_memvarValueDecRef() - in Harbour it cannot happen - * harbour/source/vm/itemapi.c - - removed snprintf macros (see hbsetup.h) - * fixed possible GPF in hb_itemCopyC() - * modified hb_itemGetPtr() to check item type - - -2005-01-06 12:15 UTC+0100 Ryszard Glab - * source/pp/ppcore.c - * defined pseudo-functions' parameters are case sensitive now - (this fixes bug #define F( n ) FF( n, N ) ) - - -2005-01-03 14:15 UTC+0100 Ryszard Glab - * include/hbexprb.c - * source/compiler/exproptb.c - * source/macro/macrob.c - * fixed to compile with SIMPLEX defined - Notice: Simplex version is not updated for a long time and - it doesn't support all fixes from FLEX version - - -2005-01-03 10:30 UTC+0100 Ryszard Glab - * include/hbcomp.h - * include/hbexprb.c - * include/hbmacro.h - * source/compiler/exproptb.c - * source/compiler/harbour.c - * source/compiler/hbgenerr.c - * source/macro/macrob.c - * source/vm/macro.c - * compiler reports error on the following syntax now (Clipper - compatibility): - {|| ¯ovar anysymbol} - "codeblock contains both macro and declared symbol reference" - Notice, that Clipper reports error even in this case: - MEMVAR mvar - {|| &mvar,mvar} - - * source/vm/memvars.c - * restored initial and expand sizes for memvars table - - * source/pp/ppcore.c - * some empty lines added - -2004-12-27 10:37 UTC+0100 Ryszard Glab - * source/vm/memvars.c - * changed algorithm for recycling of unused memvar values - - thanks to Przemek - - -2004-12-31 06:16 UTC-0800 Luis Krause Mantilla - * harbour/source/codepage/cdpesmwi.c - ! the init values were set to ESWIN instead of ESMWIN - Somehow my original entry was obliterated from the changelog as well as - my original commit of cdpesmwi.c: - - 2004-12-29 18:24 UTC-0800 Luis Krause Mantilla - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - ! Added missing/new files from source/codepage/*.c & source/lang/*.c - + source/codepage/cdpesmwi.c - + Added Spanish Modern codepage - -2004-12-31 12:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbapicdp.h - * harbour/source/codepage/cdp_tpl.c - * harbour/source/codepage/cdpeldos.c - * harbour/source/codepage/cdpelwin.c - * harbour/source/codepage/cdpesdos.c - * harbour/source/codepage/cdpeswin.c - * harbour/source/codepage/cdpgedos.c - * harbour/source/codepage/cdpgewin.c - * harbour/source/codepage/cdphu852.c - * harbour/source/codepage/cdphuwin.c - * harbour/source/codepage/cdppl852.c - * harbour/source/codepage/cdppliso.c - * harbour/source/codepage/cdpplmaz.c - * harbour/source/codepage/cdpplwin.c - * harbour/source/codepage/cdppt850.c - * harbour/source/codepage/cdpptiso.c - * harbour/source/codepage/cdpru866.c - * harbour/source/codepage/cdprukoi.c - * harbour/source/codepage/cdpruwin.c - * harbour/source/codepage/cdpsl437.c - * harbour/source/codepage/cdpsl852.c - * harbour/source/codepage/cdpsliso.c - * harbour/source/codepage/cdpslwin.c - * harbour/source/codepage/cdpsrwin.c - * harbour/source/rtl/cdpapi.c - * fix memory leak reported for accented and multi byte CPs - - + harbour/source/codepage/cdpesmwi.c - * added missing Spanish modern CP - - * harbour/include/hbstack.h - * harbour/include/hbapiitm.h - * harbour/source/vm/estack.c - * harbour/source/vm/itemapi.c - + added hb_stackReturnItem() - - removed hb_itemReturnPtr() - - * harbour/source/rdd/workarea.c - ! fixed possible restoring of scopes in scoped relations after - 'SET RELATION TO' - - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbfdbt/dbfdbt1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * use hb_stackReturnItem() instead of direct stack accessing - - * harbour/source/rdd/dbfntx/dbfntx1.c - ! Fixed opening NTX file in ReadOnly mode - * use hb_stackReturnItem() instead of direct stack accessing - - * harbour/source/rtl/filesys.c - * cleaned unnecessary initialization - - * harbour/source/vm/memvars.c - * formatting and small fix for calling GC after hb_memvarsRelease() - -2004-12-28 11:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/contrib/samples/dbf.c - * harbour/contrib/samples/time.c - * harbour/source/compiler/genc.c - * harbour/source/compiler/gencli.c - * harbour/source/rdd/dbcmd.c - * harbour/source/rtl/accept.c - * harbour/source/rtl/errorapi.c - * harbour/source/vm/hvm.c - * harbour/source/vm/initsymb.c - * harbour/source/vm/macro.c - * harbour/source/vm/memvclip.c - * changed 'extern HB_FUNC' to HB_FUNC_EXTERN for easier ABI - manipulations - -2004-12-28 10:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/harbour.spec - * harbour/hbgtmk.sh - * harbour/make_rpm.sh - * harbour/bin/pack_src.sh - * updated for recent changes in make process - - * harbour/contrib/Makefile - * added odbc lib for Linux compilation - - * harbour/contrib/btree/Makefile - * changed lib name from hb_btree to hbtree - - * harbour/contrib/btree/hb_btree.api - * harbour/contrib/btree/hb_btree.c - * fixed GCC compilation in HB_TR_DEBUG mode - - * harbour/contrib/hbzlib/hbzip.h - * harbour/contrib/hbzlib/include/hbzip.h - * harbour/include/hbapi.h - * harbour/include/hbapicdp.h - * harbour/include/hbapierr.h - * harbour/include/hbapifs.h - * harbour/include/hbapigt.h - * harbour/include/hbapiitm.h - * harbour/include/hbapilng.h - * harbour/include/hbapirdd.h - * harbour/include/hbcomp.h - * harbour/include/hbdate.h - * harbour/include/hbdbsort.h - * harbour/include/hberrors.h - * harbour/include/hbexprb.c - * harbour/include/hbexprop.h - * harbour/include/hbhash.h - * harbour/include/hbinit.h - * harbour/include/hbmacro.h - * harbour/include/hbpp.h - * harbour/include/hbrdddel.h - * harbour/include/hbrddntx.h - * harbour/include/hbrddsdf.h - * harbour/include/hbrddwrk.h - * harbour/include/hbset.h - * harbour/include/hbstack.h - * harbour/include/hbtrace.h - * harbour/include/hbvm.h - * harbour/include/hbvmpub.h - * changed #if defined (HB_EXTERN_C) to HB_EXTERN_BEGIN / HB_EXTERN_END - macros for easier manipulation with different ABI - * added HB_IS_BADITEM() macro for debugging - * synced CDP with xHarbour - added basic Unicode support - * synced RDD with xHarbour - - * harbour/source/codepage/Makefile - * harbour/source/codepage/cdp_tpl.c - * harbour/source/codepage/cdpeldos.c - * harbour/source/codepage/cdpelwin.c - * harbour/source/codepage/cdpesdos.c - * harbour/source/codepage/cdpeswin.c - * harbour/source/codepage/cdpgedos.c - * harbour/source/codepage/cdpgewin.c - * harbour/source/codepage/cdphu852.c - * harbour/source/codepage/cdphuwin.c - * harbour/source/codepage/cdppl852.c - * harbour/source/codepage/cdppliso.c - * harbour/source/codepage/cdpplmaz.c - * harbour/source/codepage/cdpplwin.c - * harbour/source/codepage/cdppt850.c - * harbour/source/codepage/cdpptiso.c - * harbour/source/codepage/cdpru866.c - * harbour/source/codepage/cdprukoi.c - * harbour/source/codepage/cdpruwin.c - * harbour/source/codepage/cdpsl437.c - * harbour/source/codepage/cdpsl852.c - * harbour/source/codepage/cdpsliso.c - * harbour/source/codepage/cdpslwin.c - * harbour/source/codepage/cdpsrwin.c - + harbour/source/codepage/uc1250.c - + harbour/source/codepage/uc1251.c - + harbour/source/codepage/uc1253.c - + harbour/source/codepage/uc1257.c - + harbour/source/codepage/uc737.c - + harbour/source/codepage/uc850.c - + harbour/source/codepage/uc852.c - + harbour/source/codepage/uc866.c - + harbour/source/codepage/uc88591b.c - + harbour/source/codepage/uc8859_1.c - + harbour/source/codepage/uc8859_2.c - + harbour/source/codepage/uckoi8.c - + harbour/source/codepage/uckoi8u.c - + harbour/source/codepage/ucmaz.c - * harbour/source/rtl/cdpapi.c - * synced HB CDP API with xHarbour - added basic Unicode support - - * harbour/source/common/expropt2.c - - * harbour/source/common/hbstr.c - * removed unnecessary initialization to avoid BCC warnings - - * harbour/source/compiler/harbour.c - * formatting - hb_compCodeBlockStop() looks like work in progress or is has - some old unused code - Ryszard, can you look at it? - - * harbour/source/macro/macro.y - * removed hack for GCC and old Bison versions - - * harbour/source/pp/ppcore.c - * removed unnecessary initialization to avoid BCC warnings - - * harbour/source/pp/pptable.c - + added some sets for RDD synchronization with xHarbour - - * harbour/source/rdd/dbcmd.c - + added __RDDGETTEMPALIAS - - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/dbfuncs.prg - * harbour/source/rdd/dbnubs.c - * harbour/source/rdd/dbstrux.prg - * harbour/source/rdd/hbdbsort.c - * harbour/source/rdd/rddord.prg - * harbour/source/rdd/workarea.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbfdbt/dbfdbt1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * synchronized with xHarbour - still dbcmd.c has to be synced yet - ! fixed all known bugs - Alexander, please look at DBFNTX - I hope all is correct. - - * harbour/source/vm/codebloc.c - * formatting - - * harbour/source/vm/fm.c - + added HB_PARANOID_MEM_CHECK to force reallocations in hb_xrealloc - and fill allocated and freed memory with HB_MEMFILER (0xff by default) - It's for debugging only. - - * harbour/source/vm/hvm.c - ! fixed hb_vmTopNumber() declaration for BCC - * use hb_gcCollectAll() at HVM exit instead of hb_gcReleaseAll() to - report allocated and not freed items - It could caused that some - programs begin to report memory leaks. - - * harbour/source/vm/itemapi.c - * check for HB_IS_BADITEM inside hb_itemClear() when compiled with - HB_PARANOID_MEM_CHECK for debugging - - * harbour/source/vm/memvars.c - * formatting - ! fixed pItem initialization in hb_memvarDetachLocal() - BTW - is this really necessary? I copy it form hb_itemUnRef() - but in fact it cannot detect all possible item reference cycles - if they appear - can they appear? - -2004-12-27 10:37 UTC+0100 Ryszard Glab - * source/vm/memvars.c - * changed algorithm for recycling of unused memvar values - - thanks to Przemek - -2004-12-24 07:47 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/vm/codebloc.c - * source/vm/itemapi.c - * source/vm/memvars.c - * fixed memvars and detached locals handling related to reallocation - of memvar's buffer and detaching of locals in a loop - - thanks to Przemek - - * source/vm/debug.c - *removed diagnostic hb_dbgstop() - - -2004-12-24 07:47 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/vm/codebloc.c - * source/vm/itemapi.c - * source/vm/memvars.c - * fixed memvars and detached locals handling related to reallocation - of memvar's buffer and detaching of locals in a loop - - thanks to Przemek - - * source/vm/debug.c - *removed diagnostic hb_dbgstop() - - -2004-12-20 05:00 UTC-0500 David G. Holm - * config/global.cf - * config/bsd/gcc.cf - * config/bsd/global.cf - * config/darwin/gcc.cf - * config/darwin/global.cf - * config/dos/bcc16.cf - * config/dos/djgpp.cf - * config/dos/global.cf - * config/dos/owatcom.cf - * config/dos/rsx32.cf - * config/dos/watcom.cf - * config/hpux/gcc.cf - * config/hpux/global.cf - * config/linux/gcc.cf - * config/linux/global.cf - * config/os2/gcc.cf - * config/os2/global.cf - * config/os2/icc.cf - * config/sunos/gcc.cf - * config/sunos/global.cf - * config/w32/bcc32.cf - * config/w32/gcc.cf - * config/w32/global.cf - * config/w32/mingw32.cf - * config/w32/msvc.cf - * config/w32/rsxnt.cf - * config/w32/watcom.cf - * Changed ARCH variable to HB_ARCH due to a conflict with a permanent, - non-replacable FreeBSD 5.3 environment variable with the same name. - -2004-12-16 13:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/make_gnu.sh - * harbour/make_tgz.sh - * fixed HPUX detection - - * harbour/bin/hb-func.sh - * late GTK lib checking for -xbgtk switch in hb* scripts - - * harbour/contrib/btree/hb_btree.api - * harbour/contrib/btree/hb_btree.c - * harbour/contrib/libnf/chdir.c - * harbour/contrib/libnf/dispc.c - * harbour/contrib/libnf/ftint86.ch - * harbour/contrib/libnf/getver.c - * harbour/contrib/libnf/mkdir.c - * harbour/contrib/libnf/proper.c - * harbour/contrib/libnf/rmdir.c - * casting and small fixes for OpenWatcom compilation - - * harbour/include/hbdefs.h - * force big endian if not detected automatically for HPUX - - * harbour/source/vm/itemapi.c - * HPUX uses isfinite() not finite() - - * harbour/source/vm/memvars.c - ! fixed endian dependent code - -2004-12-14 01:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * minor modifications of some static function names - -2004-12-14 01:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/vm/extend.c - * harbour/source/vm/itemapi.c - * fixed some minor typos in GCC hack - + added missing hb_parnint() - -2004-12-12 22:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/make_gnu.sh - + added platform autodetection if HB_ARCHITECTURE not set - and choosing the preferred compiler if HB_COMPILER not set - + added new platforms (Darwin, SunOS, BSD, HPUX) for info - descriptions - I do not want to decide if this should be - also added for make_gnu.bat, make_gnu.cmd because these - files cannot be used for this platforms. - Now make_bsd.sh and make_drw.sh are redundant - we should - decide if they should be kept in CVS or removed - - * harbour/make_tgz.sh - + added platform autodetection if HB_ARCHITECTURE not set - and choosing the preferred compiler if HB_COMPILER not set - - * harbour/contrib/Makefile - * changed the list of compiled contrib libs - now there is a - list of some default libs which can be compiled for all - platforms and only the chosen ones are added for some - platforms - it will be easier to manage because the number - of supported platforms is growing up. - Please check if it will work for other platforms/compilers. - -2004-12-12 02:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - + harbour/config/hpux/dir.cf - + harbour/config/hpux/gcc.cf - + harbour/config/hpux/global.cf - + harbour/config/hpux/install.cf - * Marcelo's files build files for HPUX borrowed from xHarbour - - * harbour/bin/hb-func.sh - * harbour/bin/hb-mkslib.sh - * harbour/bin/postinst.sh - * recent Phil's changes for Darwin and some of mine modifications and - cleanups - - * harbour/include/Makefile - + added some missing header files - - * harbour/include/hbapi.h - + added HB_ITEM_{GET|PUT}_NUMINTRAW() macros - + added hb_objGetClass() - - * harbour/include/hbdefs.h - * redefined multi commands macros to use do {...} while(0) for safe - use in any of C statement - + added HB_OS_HPUX - - * harbour/include/hbsetup.h - + added HB_OS_HPUX - - * harbour/include/hbstack.h - * hb_stackDec(), hb_stackPop(), hb_stackPush() redefined also as macros - when HB_STACK_MACROS is set - + added function hb_stackIncrease() - - * harbour/source/common/hbstr.c - * fixed possible buffer overflow - - * harbour/include/hbrdddbf.h - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/workarea.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * harbour/source/rdd/dbfdbt/dbfdbt1.c - * harbour/source/rdd/dbffpt/dbffpt1.c - * my recent fixes in xHarbour - - * harbour/source/rtl/copyfile.c - * small fix to error message - - * harbour/source/rtl/idle.c - + added HB_IDLESLEEP() and - void hb_idleSleep( double dSeconds ) - - * harbour/source/rtl/isprint.c - * use hb_xgrab()/hb_xfree() instead of malloc()/free() - - * harbour/source/rtl/run.c - * added __WATCOMC__ to C compilers supporting system() - - * harbour/source/vm/arrays.c - * cleaned hb_arrayFromStack(), hb_arrayFromParams() - - * harbour/source/vm/arrayshb.c - * small fixes to error messages - ! improved Clipper compatibility in AFILL() - * harbour/source/vm/asort.c - * separate entry for integer items - conversion to double may - damage big 64bit numbers - - * harbour/source/vm/classes.c - + added USHORT hb_objGetClass( PHB_ITEM pItem ) - - * harbour/source/vm/dynsym.c - ! fixed accessing to uninitialized memory - - * harbour/source/vm/estack.c - + added hb_stackIncrease() and modification for new stack macros - - * harbour/source/vm/hvm.c - * fixed some error messages - * some speed improvements - - * harbour/source/vm/itemapi.c - * some small optimizations - - * harbour/utils/hbtest/rt_misc.prg - * modified file name conversions test results for __PLATFORM__UNIX - -2004-10-31 01:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/compiler/cmdcheck.c - * replaced some free by hb_xfree - - * harbour/source/compiler/genc.c - * replace non ID characters in name of local symbol table by '_' - - * harbour/bin/hb-func.sh - * set proper X11 path for mixed (32/64bit) systems - -2004-10-24 20:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/config/bsd/global.cf - + added suppot for HB_COMMERCE and HB_WITHOUT_GTSLN env vars - - * harbour/source/compiler/Makefile - * formating - - * harbour/include/hbdefs.h - * harbour/source/vm/fm.c - * harbour/source/vm/garbage.c - + added macro HB_ALLOC_ALIGNMENT which forces allocated memory - alignment in FM and GC modules to given value - by default used - only when set HB_OS_SUNOS with 8 bytes alignment - -2004-10-23 02:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/bin/postinst.sh - * changed install command syntax for Solaris compatibility - - * harbour/include/hbdefs.h - * minor formating - - * harbour/source/vm/fm.c - + overwrite HB_MEMINFO_SIGNATURE with 0 in hb_xfree() for detection - redundant hb_xfree() call with the same pointer - - * harbour/source/rtl/spfiles.c - * set the real path in second parameter of RetPath even when - hb_spFiles fails to avoid race condition - - * harbour/source/vm/hvm.c - ! set proper decimal value in hb_vmDivide when the integer results - is converted into double - ! commented out integer division optimization at runtime for Clipper - compatibility - -2004-10-20 17:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/source/pp/ppcore.c - + added predefined macro __PLATFORM__UNIX for all *nix compatible - systems - - * harbour/contrib/dot/pp.prg - * harbour/source/pp/ppcore.c - * harbour/utils/hbtest/hbtest.prg - * harbour/utils/hbtest/rt_misc.prg - * replaced __PLATFORM__Linux with __PLATFORM__UNIX - - * harbour/harbour.spec - ! fixed stripping script files - - * harbour/source/rdd/dbfntx/dbfntx1.c - ! fixed casting - -2004-10-20 12:00 UTC+0300 Alexander Kresin - * source/rdd/dbcmd.c - ! Fixed a small bug in ordListAdd() function - there was a memory leak if - the index name is wrong. - -2004-10-20 09:41 UTC+0200 Chen Kedem - * makefile.bc - + Add the missing Greek language and codepage files - * doc/dirstruc.txt - + Add oneliner description for: config/darwin, config/sunos - -2004-10-20 07:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbdefs.h - + added macros HB_{PUT|GET}_{LONG|PTR} - * changed HB_CAST_BYTE_NUMBERS_OFF to HB_STRICT_ALIGNMENT - - * harbour/source/vm/fm.c - * harbour/source/vm/hvm.c - * harbour/source/vm/macro.c - * replaced code which made pointer casting without respecting - machine alignment with proper macros - -2004-10-19 22:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/bin/hb-func.sh - * changed 'sed' and 'tr' expresions to be compatible with SunOS - + added Darwin dynlib support borrowed from xHarbour thanks - to Phil Krylov - - * harbour/bin/hb-mkslib.sh - * minor modification - - * harbour/bin/postinst.sh - * harbour/config/darwin/gcc.cf - + Phil's modification for Darwin - * removed HB_OS_BSD and HB_BIG_ENDIAN - the first macro is set in - hbsetup.h when HB_OS_DARWIN is set, the second one should be - automatically detected inside hbdefs.h using C header files. - - * harbour/config/sunos/gcc.cf - * removed HB_BIG_ENDIAN macro - the same as above - - * harbour/include/hbapi.h - * harbour/source/vm/fm.c - * changed 16/32 bit hack #if UINT_MAX == ULONG_MAX for hb_xmem*() - functions to still not perfect but working on current platforms - #if UINT_MAX > USHRT_MAX - - * harbour/include/hbdefs.h - + added HB_DBL_LIM_INT24(d) and HB_LIM_INT24(l) macros - + try to autodect byte order using information form system C header - files - it whoud work for Linux, BSD/Darwin, SunOS - maybe also - for some other *nixes - * removed some dangerous casting. [x]Harbour code still depnds on - 8bytes double - in CDX for binary compatibility IEEE754 double is - necessary - if some architectures uses differ type of double value - for binary compatibility we will have to create proper conversion - functions for HB_{PUT|GET}_{LE|BE}_DOUBLE and HB_ORD2DBL/HB_DBL2ORD - macros - - * harbour/include/hbsetup.h - * define HB_OS_UNIX when HB_OS_SUNOS set - - * harbour/source/common/hbstr.c - * harbour/source/pp/ppcore.c - * casting - - * harbour/source/compiler/harbour.c - * use HB_LIM_INT*() macros instead of hard coded values - * removed some unnecessary if () statement - always true - - * harbour/source/compiler/harbour.l - * harbour/source/compiler/hbfix.c - * harbour/source/vm/macro.c - * use HB_LIM_INT*() macros instead of hard coded values - - * harbour/source/rdd/dbfcdx/dbfcdx1.c - ! minor fix - - * harbour/source/rdd/dbfntx/dbfntx1.c - ! small fix - the temporary index file was not removed - * do not force any name for temporary index files - important - in some cases (like DOS and short file names) - - * harbour/source/rtl/diskspac.c - ! fixed type in SunOS version - - * harbour/source/rtl/gtsln/Makefile - * minor cleanups - - * harbour/utils/hbtest/rt_math.prg - * changed to number results to be Clipper compatible. - -2004-10-14 21:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/bin/hb-func.sh - * harbour/bin/pack_src.sh - + harbour/config/sunos/dir.cf - + harbour/config/sunos/gcc.cf - + harbour/config/sunos/global.cf - + harbour/config/sunos/install.cf - + added SunOS support - - * harbour/config/darwin/gcc.cf - * small modification for nicer work with OS-X installed - on SF compile farm - I'm not Darwin user and SF is the only - one place I can make tests - if someone may fix me and leave - some comments 'why?' it will be nice. - - * harbour/contrib/Makefile - * exclude ADS RDD from Darwin build - - * harbour/contrib/rdd_ads/adsfunc.c - * some minor modification to avoid compiler warnings. - - * harbour/include/hbdefs.h - * fixed typo in HB_PUT_LE_DOUBLE() macro for big endian machines. - - * harbour/source/compiler/genc.c - ! fixed endian dependend code I left by mistake - - * harbour/source/compiler/harbour.c - * harbour/source/compiler/harbour.sly - * harbour/source/compiler/harbour.y - ! commented out hb_compSequenceFinish() - - * harbour/source/pp/ppcore.c - + added ( void * ) size as result of __ARCH{16,32,64}BIT__ and - __{LITTLE,BIG,PDP}_ENDIAN__ macros - - * harbour/source/pp/pragma.c - ! fixed possible string overflow - - * harbour/source/vm/itemapi.c - * harbour/source/rtl/diskspac.c - * harbour/source/rtl/disksphb.c - * harbour/source/rtl/fstemp.c - * harbour/source/rtl/idle.c - * harbour/source/rtl/math.c - * harbour/source/rtl/gtcrs/Makefile - * harbour/source/rtl/gtcrs/gtcrs.c - * harbour/source/rtl/gtcrs/kbdcrs.c - * harbour/source/rtl/gtcrs/mousecrs.c - * modified for SunOS and Darwin support. - -2004-10-12 02:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/makefile.bc - * updated for recent changes by Jacek Kubica - thanks. - -2004-10-12 01:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/include/hbdefs.h - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/workarea.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - * foramting some // replaced by /* */ - * adding some missing extensions I haven't ported fully in xHarbour - - * harbour/source/vm/maindllp.c - * fixed Windows compilation - The BCC and MSC make fiels have to be updated to the folowing changes: - - harbour/contrib/libct/invertwin.prg - + harbour/contrib/libct/invrtwin.prg - - harbour/source/common/hbffind.c - + harbour/source/common/hbverdsp.c - - harbour/source/rdd/dbfcdx/dbfcdx1.h - + harbour/source/rtl/hbffind.c - -2004-10-11 21:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * harbour/Makefile - + harbour/make_bsd.sh - + harbour/make_drw.sh - * harbour/make_tgz.sh - + harbour/bin/hb-func.sh - * harbour/bin/pack_src.sh - + harbour/bin/postinst.bat - + harbour/bin/postinst.sh - * harbour/config/dir.cf - * harbour/config/bsd/gcc.cf - * harbour/config/bsd/global.cf - + harbour/config/darwin/dir.cf - + harbour/config/darwin/gcc.cf - + harbour/config/darwin/global.cf - + harbour/config/darwin/install.cf - * harbour/config/dos/dir.cf - * harbour/config/dos/global.cf - * harbour/config/dos/install.cf - * harbour/config/dos/owatcom.cf - * harbour/config/dos/watcom.cf - * harbour/config/linux/gcc.cf - * harbour/config/linux/global.cf - * harbour/contrib/Makefile - * harbour/contrib/dot/pp_harb.ch - * harbour/contrib/libct/Makefile - * harbour/contrib/libct/bit1.c - * harbour/contrib/libct/bit2.c - * harbour/contrib/libct/bit3.c - * harbour/contrib/libct/files.c - * harbour/contrib/libct/ftoc.c - - harbour/contrib/libct/invertwin.prg - + harbour/contrib/libct/invrtwin.prg - * harbour/contrib/libct/keyset.c - * harbour/contrib/libct/makefile.bc - * harbour/contrib/libmisc/dates2.c - * harbour/contrib/rdd_ads/ads1.c - * harbour/contrib/rdd_ads/adsfunc.c - * harbour/contrib/samples/date.c - * harbour/include/dbinfo.ch - * harbour/include/hbapi.h - * harbour/include/hbapicdp.h - * harbour/include/hbapifs.h - * harbour/include/hbapigt.h - * harbour/include/hbapiitm.h - * harbour/include/hbcomp.h - * harbour/include/hbdate.h - * harbour/include/hbdbf.h - * harbour/include/hbdbferr.h - * harbour/include/hbdefs.h - * harbour/include/hbexprb.c - * harbour/include/hbexprc.c - * harbour/include/hbexprop.h - * harbour/include/hbmacro.h - * harbour/include/hbmath.h - * harbour/include/hbpcode.h - * harbour/include/hbrddcdx.h - * harbour/include/hbrdddbf.h - * harbour/include/hbrdddbt.h - * harbour/include/hbrddfpt.h - * harbour/include/hbrddntx.h - * harbour/include/hbset.h - * harbour/include/hbsetup.h - * harbour/include/set.ch - * harbour/source/common/Makefile - * harbour/source/common/expropt1.c - * harbour/source/common/expropt2.c - - harbour/source/common/hbffind.c - * harbour/source/common/hbfsapi.c - * harbour/source/common/hbstr.c - * harbour/source/common/hbver.c - + harbour/source/common/hbverdsp.c - * harbour/source/compiler/genc.c - * harbour/source/compiler/gencli.c - * harbour/source/compiler/harbour.c - * harbour/source/compiler/harbour.l - * harbour/source/compiler/harbour.slx - * harbour/source/compiler/harbour.sly - * harbour/source/compiler/harbour.y - * harbour/source/compiler/hbfix.c - * harbour/source/compiler/hbpcode.c - * harbour/source/compiler/hbusage.c - * harbour/source/compiler/simplex.c - * harbour/source/macro/macro.l - * harbour/source/macro/macro.slx - * harbour/source/macro/macro.y - * harbour/source/pp/ppcore.c - * harbour/source/rdd/dbcmd.c - * harbour/source/rdd/dbf1.c - * harbour/source/rdd/dbfcdx/dbfcdx1.c - - harbour/source/rdd/dbfcdx/dbfcdx1.h - * harbour/source/rdd/dbffpt/dbffpt1.c - * harbour/source/rdd/dbfntx/dbfntx1.c - * harbour/source/rtl/Makefile - * harbour/source/rtl/abs.c - * harbour/source/rtl/at.c - * harbour/source/rtl/datec.c - * harbour/source/rtl/dates.c - * harbour/source/rtl/dateshb.c - * harbour/source/rtl/datesx.c - * harbour/source/rtl/empty.c - * harbour/source/rtl/errorapi.c - * harbour/source/rtl/errorint.c - * harbour/source/rtl/filesys.c - * harbour/source/rtl/fstemp.c - + harbour/source/rtl/hbffind.c - * harbour/source/rtl/hbrandom.c - * harbour/source/rtl/idle.c - * harbour/source/rtl/inkey.c - * harbour/source/rtl/math.c - * harbour/source/rtl/minmax.c - * harbour/source/rtl/pad.c - * harbour/source/rtl/padc.c - * harbour/source/rtl/padl.c - * harbour/source/rtl/padr.c - * harbour/source/rtl/philes.c - * harbour/source/rtl/round.c - * harbour/source/rtl/soundex.c - * harbour/source/rtl/str.c - * harbour/source/rtl/strcase.c - * harbour/source/rtl/strmatch.c - * harbour/source/rtl/strtran.c - * harbour/source/rtl/strzero.c - * harbour/source/rtl/substr.c - * harbour/source/rtl/val.c - * harbour/source/rtl/gtcrs/gtcrs.c - * harbour/source/rtl/gtcrs/kbdcrs.c - * harbour/source/rtl/gtdos/gtdos.c - * harbour/source/rtl/gtsln/gtsln.c - * harbour/source/rtl/gtsln/kbsln.c - * harbour/source/rtl/gtsln/keytrans.c - * harbour/source/vm/arrays.c - * harbour/source/vm/codebloc.c - * harbour/source/vm/estack.c - * harbour/source/vm/eval.c - * harbour/source/vm/extend.c - * harbour/source/vm/hvm.c - * harbour/source/vm/itemapi.c - * harbour/source/vm/macro.c - * harbour/source/vm/memvars.c - * harbour/source/vm/runner.c - * harbour/tests/bldtest/bldtest.c - * harbour/utils/hbtest/hbtest.prg - * harbour/utils/hbtest/rt_misc.prg - * harbour/utils/hbtest/rt_str.prg - * Sorry but it's too much modification for full description - cvs diff gives file 785982 bytes length. So I only count the - main things: - ! cleand the code (no more warning messages under Linux and GCC and - DOS OpenWatcom) - some of them were real bugs - ! cleaned all endian dependend code I've found - now Harbour can be - compiled on LITLE and BIG endian machines - for some other like - PDP ENDIAN it's enough to define proper macros in hbdefs.h - + added macros for to get/put values in chosen byte order: - HB_GET_LE_[U]INT{16,24,32,64}( pPtr ) - HB_GET_BE_[U]INT{16,24,32,64}( pPtr ) - HB_PUT_LE_[U]INT{16,24,32,64}( pPtr, nVal ) - HB_PUT_BE_[U]INT{16,24,32,64}( pPtr, nVal ) - + added macro HB_CAST_BYTE_NUMBERS_OFF which disables casting in - HB_{GET|PUT}_{LE|BE}_* macros - it's necessary for some platforms - like ALPHA DEC. - ! cleaned the code for 64bit machines - * changed all parameters in hb_date* functions (day, month, year, week) - from LONG to int - it doesn't change binary compatibility for 32bit - machines but can cause troubles with compiling the old source - + changed HB_IT_LONG type to HB_LONG which is mapped to long long - by default for 32 bit machines. - + change HB_IT_INTEGER to be real 'int' C type not 'short int' - + added HB_IS_NUMINT() macro - + added hb_parnll, hb_stornll, hb_retnll, hbretnlllen, hb_itemPutNLL, - hb_itemPutNLLLen, hb_itemGetNLL which operates on LONGLONG - + added hb_parnint, hb_stornint, hb_retnint, hb_retnintlen, - hb_itemPutNInt, hb_itemPutNIntLen, hb_itemGetNInt which operates on - HB_LONG - + added HB_PUSHLONGLONG pcode - + changed compiler and optimizer to use HB_LONG numbers and reduce - conversion from to double which may damage the 64bit number. - + common functions for string to number conversions for compiler, RTL - and RDD to reduce problems with differ FL values for the same number: - hb_compStrToNum(), hb_valStrnToNum(), hb_strToNum(), hb_strnToNum() - + common function hb_numRoun() which uses exactly the same algorithms - as string to number conversion for the same reason - please keep - this functions together. - + hack inside hb_numRound() similar to the one used by CL5.3 - + hb_numInt() which uses uses the same hack as hb_numRound() - + rewritten number to string conversion - + some new string manipulation functions hb_strncpy(), hb_strncat(), ... - They works differ the the C one - always set 0 at the end, the buffer - has to be n+1 bytes length, the n is total size of buffer not the - left free space. - ! cleaned some code which operates on ASCIIZ string to avoid potential - buffer overflow - + updated RDD code - it's the first part - in few days I plan to change - workarea structure in both projects - it will break any 3rd party RDDs - so they have to be updated. I want to add SUPERTABLE into workarea - to allow creating new RDD on-line. - ! cleaned the bugs with negating integers - on most machines (like x86) - the integers are not 0 symmetric - it means that x = -x does not work - for {INT,LONG,LONGLONG}_MIN (hb_vmNegate, ABS()) - + cleaned error messages to be Clipper compatible. - + updated build process for .DEB packages - now hb* scripts and shared - libs are created by standard make install - * added new .prg #defines: __PLATFORM__, - __ARCH{16|32|64}BIT__, __LITTLE_ENDIAN__|__BIG_ENDIAN__|__PDP_ENDIAN__ - !!! cPlatfrom can have lower letters (for xHarbour compatibility) - If you do not like it please change it. - * others ... - -2004-10-10 21:35 UTC+0300 Alexander Kresin - * source/rdd/dbfntx/dbfntx1.c - ! Fixed a bug, introduced in a last change. - -2004-10-06 21:56 UTC+0300 Alexander Kresin - * source/rdd/dbfntx/dbfntx1.c - ! Fixed a bug, causing random GPFs while seeking. - -2004-10-06 05:40 UTC-0500 David Arturo Macias Corona - + harbour/contrib/mysql/difer.txt - Describe modifications to programs of harbour\contrib\mysql, in Spanish - + harbour/contrib/mysql/diffeng.txt - Describe modifications to programs of harbour\contrib\mysql, in English - - -2004-10-05 05:39 UTC-0500 David Arturo Macias Corona - * harbour/contrib/mysql/tmysql.prg - * harbour/contrib/mysql/tsqlbrw.prg - * Changes to approach Clipper behaviour - NOTE: My changes are marked in source code with label "DAVID:", to - help in quick review of changes, and these changes are - described widely in files difer.txt, diffeng.txt - These labels will be removed in a reasonable time - - + harbour/contrib/mysql/difer.txt - Describe modifications to programs of harbour\contrib\mysql, in Spanish - + harbour/contrib/mysql/diffeng.txt - Describe modifications to programs of harbour\contrib\mysql, in English - - -2004-09-08 16:40 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/vm/dynsym.c - * a new function 'hb_dynsymScope' was added to check if the - passed symbol has requested scope - - * source/vm/macro.c - * source/vm/hvm.c - * fixed support for static functions used in macro compiled - expressions (the runtime error is generated during evaluation - instead of macro compilation - like in Clipper) - - * source/pp/ppcore.c - * fixed support for '¯o.' in complex expressions - - -2004-09-07 10:30 UTC+0100 Ryszard Glab - * source/pp/ppcore.c - * fixed support for Clipper undocumented match marker, - Harbour is now 100% compatible here. - Notice that this fixes support for - SET FILTER TO ¯o - SET FILTER TO ¯o. .AND. expr - -2004-08-06 18:21 UTC-0500 David Arturo Macias Corona - * harbour/source/rtl/dates.c - ! fixed problem with dates. Now is Clipper compatible - For empty date it returns empty string, for valid - when number of years greater equal to 0 it returns formated date - and in other case it fills buffers with 0 characters. - Borrowed from xHarbour, in changes made by Przemyslaw Czerpak - It also fix ( CTOD( "" ) + 30 ) error reported by Randy Portnoff - -2004-08-04 10:28 UTC+0300 Alexander Kresin - * contrib/odbc/odbc.c - + New functions has been added: sqlSetStmtOption() and sqlColumns() - * contrib/mysql/mysql.c - + sqlUseRes() function added - * sqlListTbl() is modified - second parameter ( table template ) is added - -2004-08-03 11:10 UTC+0100 Ryszard Glab - * source/rtl/tget.prg - * GetNew() no longer evaluates passed set/get codeblock - -2004-08-01 14:38 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/rtl/filesys.c - ! Out of bound buffer access fixed. (I couldn't test this) - (Thanks to Chen Kedem) - -2004-07-27 20:41 UTC+0100 Antonio Linares - * include/hbclass.ch - + Added a previous #undef _HB_CLS_FUNCNAME for multiple classes - definitions on the same PRG - -2004-07-27 10:50 UTC-0800 Luis Krause Mantilla - * hrbdll.bc - + Added modules array.prg, block.prg, characte.prg, date.prg, - logical.prg, nil.prg, numeric.prg. - -2004-07-27 11:49 UTC+0100 Antonio Linares - + source/rtl/array.prg - + source/rtl/block.prg - + source/rtl/date.prg - + source/rtl/logical.prg - + source/rtl/nil.prg - + source/rtl/numeric.prg - * Harbour implementation of Class(y) Classes Array, Block, Date, Logical, - Nil, Numeric. - - * makefile.bc - + Added modules array.prg, block.prg, date.prg, logical.prg, nil.prg, - numeric.prg. - - WARNING: Other makefiles need to be updated - -2004-07-27 11:16 UTC+0100 Antonio Linares - * include/hbclass.ch - + Added optional clause FUNCTION to class definitions, - based on Class(y) implementation. This allows to use a different name, - if desired, to the defined class. i.e.: - - CLASS Date FUNCTION _Date - - As Date() is a reserved function name, we can use a _Date() one, but the - Class Name will remain as DATE. - -2004-07-27 02:09 UTC+0100 Antonio Linares - + source/rtl/characte.prg - * Harbour implementation of Class(y) Class Character - - * makefile.bc - + Added module characte.prg - - WARNING: Other makefiles need to be updated - -2004-07-26 9:03 UTC-0800 Luis Krause Mantilla - * hrbdll.bc - + Added module scalar.prg - -2004-07-26 10:50 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/compiler/cmdcheck.c - ! Writing out of bound when using -x compiler switch fixed. - (Thanks to Chen Kedem) - - * source/vm/cmdarg.c - ! Tabs removed. - -2004-07-26 01:21 UTC+0100 Antonio Linares - + source/rtl/scalar.prg - * Harbour implementation of Class(y) Class ScalarObject - - * makefile.bc - + Added module scalar.prg - - WARNING: Other makefiles need to be updated. - -2004-07-25 16:48 UTC+0100 Antonio Linares - * vm/classes.c - + functions hb_clsCreate(), hb_clsAdd() and hb_clsAssociate() added. - These functions are equivalents to Clipper __mdCreate(), __mdAdd() - and __mdAssociate(), though the parameters are different to easy - their use. - - The purpouse of these functions is to create new classes from C level, - a missing feature of Harbour classes engine. Harbour classes functions - never considered the possibility of being used from C level. - - USHORT hb_clsCreate( USHORT usSize, char * szClassName ) : Creates a - new class with usSize DATAs and szClassName Name. It returns the handle - of the new created class. - - void hb_clsAdd( USHORT usClassH, char * szMethodName, void * pFunction ) : - Adds a new method to the class, that will execute pFunction() code. - - void hb_clsAssociate( USHORT usClassH ) : Instantiates a new object of - the Class handle usClassH. The object is placed at the stack returned value, - so it may be accessed using hb_par...( -1, ... ) functions, or managing the - item directly. - -2004-07-19 21:42 UTC+0300 Alexander Kresin - * include/hbver.h - * doc/whatsnew.txt - * bin/pack_src.sh - * harbour.spec - * make_tgz.sh - * Release info has been changed for release 44. - -2004-07-19 17:05 UTC+0300 Alexander Kresin - * contrib/mysql/tmysql.prg - ! Added checking for decimal field type in :GetRow() and :GetBlankRow() - - provided by Mitja Podgornik - -2004-07-19 12:15 UTC+0100 Ryszard Glab - * doc/whatsnew.txt - *added some items and divided into few sections - -2004-07-18 19:50 UTC+0200 Tomaz Zupan - * harbour.spec - * Changed Optimisation level for rpm package to -O2, - because there are pboblems with -O3 and gcc 3.3 on Mandrake Linux - -2004-07-18 19:50 UTC+0300 Alexander Kresin - * contrib/mysql/mysql.c - * Some fixes and formatting. - -2004-07-18 13:05 UTC+0300 Chen Kedem - * doc/whatsnew.txt - + Add information about the upcoming alpha build 44 - -2004-07-17 21:58 UTC+0300 Alexander Kresin - * contrib/mysql/tmysql.prg - ! Small fix, provided by Mitja Podgornik - -2004-07-17 04:14 UTC-0500 David Arturo Macias Corona - * source/rtl/tget.prg - + Added DATA CapRow and DATA CapCol values - For Clipper 5.3x compatibility - -2004-07-16 13:40 UTC+0300 Alexander Kresin - * source/rdd/dbfntx/dbfntx1.c - ! Bug fixed in soft seek - * contrib/odbc/todbc.prg - ! Bug fixed in TODBC():Open() - -2004-07-12 17:19 UTC-0800 Luis Krause Mantilla - * source/rdd/dbcmd.c - ! fixed Clipper compatibility bug reported by Serge Jakimoff - * source/rtl/minmax.c - ! Fixed r/t error when Min() and Max() received logical values - to have Clipper compatibility - -2004-07-09 12:15 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/vm/codebloc.c - * source/vm/proc.c - *fixed to correctly return the procedure name where - the codeblock was created - - * source/common/hbffind.c - *fixed to set correctly size and modification date of - retrieved files on Linux/Unix -used from DIRECTORY() - function - - -2004-06-21 14:07 UTC-0500 Randy Portnoff - * source/rdd/dbcmd.c - * Fixed rddMoveRecords() so that copied records, which are - deleted, maintain their deleted status. - Reported by Marcos Gambeta - -2004-06-08 22:50 UTC+0300 Phil Krylov - * source/rtl/inkey.c - ! Renamed SETLASTKEY() to HB_SETLASTKEY(). - * source/debug/debugger.prg - ! Changed SETLASTKEY() to HB_SETLASTKEY(). - + contrib/libct/setlast.prg - * contrib/libct/Makefile - * contrib/libct/ctflist.txt - * contrib/libct/makefile.bc - * contrib/libct/makefile.vc - + Reimplemented SETLASTKEY() through HB_SETLASTKEY() - -2004-06-08 22:10 UTC+0300 Phil Krylov - - contrib/libct/setlast.prg - * contrib/libct/Makefile - * contrib/libct/ctflist.txt - * contrib/libct/makefile.bc - * contrib/libct/makefile.vc - - Removed SETLASTKEY() from libct, because it conflicts with the RTL - implementation which is also cleaner. - -2004-06-08 02:25 UTC+0300 Phil Krylov - * source/debug/debugger.prg - + Added preliminary CLD-compatible scripting capabilities. - -2004-06-07 18:15 UTC+0300 Phil Krylov - * source/debug/dbgmenu.prg - * source/debug/debugger.prg - ! Fixed some problems related to menus, colors and cursor positioning. - -2004-06-07 14:15 UTC+0300 Phil Krylov - * source/rtl/inkey.c - + Added hb_setInkeyLast() (copyright 2002 by Walter Negro) and - SETLASTKEY() (copyright 2003 by Przemyslaw Czerpak). Both functions - are borrowed from xHarbour. - * source/debug/debugger.prg - ! Fixed Left and Right keys behaviour in the code window (fix by Lorenzo - Fiorini, borrowed from xHarbour). - ! Also from xHarbour, but written by myself: - ! Restore LastKey() value on program execution. - ! Fixed Step() behaviour. - ! Removed the last dependencies of the debugger on SET_EXACT setting. - ! Fixed some issues with the Monitor window. - -2004-06-07 13:45 UTC+0300 Phil Krylov - * source/debug/dbgwa.prg - * source/debug/dbgtarr.prg - * source/debug/tbrwtext.prg - * source/debug/debugger.prg - ! Miscellaneous fixes borrowed from xHarbour: - ! Fixed support for monitoring work areas with non-contigous numbers. - ! Fixed monitoring empty subarrays. - ! Maintain separate "active" line and cursor line in the code window. - Support external initialization of TBrwText():lLineNumbers. - ! Fixed problems with breakpoints and source files stored in multiple - directories. The environment variable HB_DBG_PATH takes precedence - over PATH to search for source files. - -2004-06-03 11:00 UTC+0100 Ryszard Glab - - * source/compiler/harbour.c - * fixed to compile FOR var[index] - - -2004-06-02 05:30 UTC-0400 Alejandro de Garate - - * doc\en\file.txt - * function FOPEN() - ! Fixed the meaning of FO_DENYNONE - + Added FO_SHARED definition to the table - - * function FCREATE() - ! Fixed table title name, changed Atribute for Meaning - - * function FREAD() - ! Fixed typo at $ARGUMENTS$ section - ! Removed typo from $RETURNS$ section - ! Fixed typo at $EXAMPLES$ section - - * function FCLOSE() - ! Fixed typo at $EXAMPLES$ section - - * function CURDIR() - ! Fixed typo at $ARGUMENTS$ section - - * function MAKEDIR() - ! Fixed typo at $RETURNS$ section - - + doc\es\file.txt - + Added file's operations document - - -2004-05-27 14:35 UTC-0400 Alejandro de Garate - - + doc/es/codestyl.txt - + Added code style document file, missing in the last commit - - + doc/es/hb_apiln.txt - + Added Lang API Document - - * doc/es/lang.txt - * Updated Lang Document - - + doc/es/hb_vm.txt - + Added VM API Document - - -2004-05-24 22:37 UTC-0400 Alejandro de Garate - * doc/codestyl.txt - * Added Documentation item - - + doc/es/codestyl.txt - + Documented code style - - -2004-05-23 16:55 UTC+0300 Chen Kedem - - * doc/en/lang.txt - + Documentation for HB_LANGERRMSG(), HB_LANGMESSAGE(), HB_TRANSLATE() - + Added Greek and Greek ANSI to the list in HB_LANGSELECT() and - HB_SETCODEPAGE() - + add notes about the need to REQUEST language and code page module - * Some formating - -2004-05-21 14:40 UTC+0100 Ryszard Glab - - * source/compiler/harbour.l - * modified to compile correctly with flex version 2.5.31 - (IMHO it is m4 preprocessor bug) - - -2004-05-21 13:30 UTC+0300 Alexander Kresin - * source/rdd/dbf1.c - * source/rdd/dbfdbt/dbfdbt1.c - * Calls of hb_cdpTranslate() are changed to hb_cdpnTranslate() - + source/codepage/cdpeldos.c - + source/codepage/cdpelwin.c - + Greek language codepage files added - provided by Pete Dionisopoulos. - * source/lang/msgel.c - * source/lang/msgelwin.c - + Greek language files added - provided by Pete Dionisopoulos. - * source/codepage/Makefile - * source/lang/Makefile - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - * Makefiles has been updated due to new codepage and lang files. - * source/codepage/cdp_tpl.c - * source/codepage/cdpesdos.c - * source/codepage/cdpeswin.c - * source/codepage/cdpgedos.c - * source/codepage/cdpgewin.c - * source/codepage/cdphu852.c - * source/codepage/cdphuwin.c - * source/codepage/cdpla850.c - * source/codepage/cdppl852.c - * source/codepage/cdppliso.c - * source/codepage/cdpplmaz.c - * source/codepage/cdpplwin.c - * source/codepage/cdppt850.c - * source/codepage/cdpptiso.c - * source/codepage/cdpru866.c - * source/codepage/cdprukoi.c - * source/codepage/cdpruwin.c - * source/codepage/cdpsk852.c - * source/codepage/cdpskiso.c - * source/codepage/cdpsl437.c - * source/codepage/cdpsl852.c - * source/codepage/cdpsliso.c - * source/codepage/cdpslwin.c - * source/codepage/cdpsrwin.c - * Few lines are replaced with HB_CODEPAGE_INIT( ), as was suggested by - Ilias Lazaridis - - -2004-05-19 13:25 UTC+0100 Ryszard Glab - - * source/codepage/cdpsrwin.c - *replaced CR+LF with LF only - - -2004-05-18 15:45 UTC-0400 David G. Holm - * source/rtl/cdpapi.c - ! Corrected the function names reported by to HB_TRACE statements, - as pointed out by Chen Kedem . - -2004-05-18 16:12 UTC+0300 Chen Kedem - - * doc/en/lang.txt - + Documentation for HB_SETCODEPAGE() - * Some formating - -2004-05-14 16:05 UTC+0100 Ryszard Glab - - * include/hbexpra.c - * source/compiler/expropta.c - * source/compiler/harbour.c - * source/macro/macroa.c - * source/rtl/tget.prg - * source/rtl/tgetint.prg - * fixed to be more Clipper compatible - - * source/rtl/persist.prg - * fixed to not use xBase extensions - - -2004-05-13 11:00 UTC+0100 Ryszard Glab - - * source/rtl/transform.c - * TRANSFORM(1.23,"999.") correctly returns " 1." now - instead of empty string - - * source/rtl/tget.prg - * fixed to correctly display buffer when negative value - and '0' was pressed in the position next to decimal - point - e.g. -1230. was displayed as -123-. - * fixed support for '9999.' picture - - -2004-05-11 15:10 UTC+0100 Ryszard Glab - - * CVSROOT/avail - * restored write access to the entire repository for - all developers - - * doc/codestyl.txt - * small corrections (use 3 spaces instead of Tab) - - * include/hbcomp.h - * source/compiler/cmdcheck.c - * source/compiler/harbour.c - * source/compiler/hbusage.c - + added posibility to specify the output PPO file with -p - e.g. - -pppo/myfile.ppo - (thanks to Larry Sevilla) - - * source/rtl/tget.prg - * fixed positioning of cursor when the first pressed key - was a digit during editing of numeric value - - * source/compiler/hbfix.c - * source/rdd/dbcmd.c - * source/rdd/dbf1.c - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbffpt/dbffpt1.c - * source/rdd/dbfntx/dbfntx1.c - * source/rtl/dates.c - * source/rtl/filesys.c - * source/rtl/inkey.c - * source/rtl/isprint.c - * source/rtl/math.c - * source/rtl/philes.c - * source/vm/classes.c - * source/vm/hvm.c - * removed '//' comments - -2004-05-10 19:20 UTC-0400 David G. Holm - - - cvsplay.txt - - cvsplay2.txt - - Removed these two files. - -2004-05-08 10:40 UTC+0100 Ryszard Glab - - * source/rdd/dbf1.c - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbfdbt/dbfdbt1.c - * source/rdd/dbffpt/dbffpt1.c - * source/rdd/dbfntx/dbfntx1.c - * source/rtl/is.c - * source/rtl/strcase.c - * source/rtl/transfrm.c - * updated to refer hb_cdp_page instead of s_cdpage - - * source/vm/itemapi.c - * snprintf is used only in GCC/Linux and WatcomC - guarded with #ifdef HB_HAS_SNPRINTF - (this is ommision from my previous commit) - -2004-05-07 19:30 UTC+0100 Ryszard Glab - - + config/dos/owatcom.cf - * added configuration file for OpenWatcom (renamed - from watcom.cf) - - * config/dos/watcom.cf - * restored previous version so it correctly compiles - under WatcomC 10 - please use watcom.cf for WatcomC - and owatcom.cf for OpenWatcom - - * makefile.bc - * makefile.nt - * makefile.vc - * hrbdll.bc - * source/codepage/Makefile - + source/codepage/cdpsrwin.c - + new file with Serbian codepage - - * CVSROOT/avail - * removed reference to my local file - - * ERRATA - * updated (removed reference to tmpname) - - * doc/codestyl.txt - * updated with some coding guidelines adopted from PHP - (please fell free to discuss them ;-) - - * doc/howtocvs.txt - * added description for commit on Linux - - * include/hbapicdp.h - * source/codepage/cdpesdos.c - * restored previous versions - - * include/hbcomp.h - * added reference for WatcomC compiler - - * include/hbexprc.c - * fixed warning reported by WatcomC - - * source/vm/itemapi.c - * fixed infinite support for WatcomC - - * source/rtl/cdpapi.c - * renamed global symbol s_cdpage into hb_cdp_page - - * source/rtl/gtcrs/kbdcrs.c - * fixed reporting keystrokes with codes > 127 - -2004-05-06 21:10 UTC-0400 David G. Holm - * source/vm/itemapi.c - ! The funtion snprintf is not a Standard C function and does not - exist in the Version 12 of the Microsoft C++ compiler (MSVC 6). - -2004-05-06 18:00 UTC+0100 Ryszard Glab - + CVSROOT/avail - * CVSROOT/checkoutlist - * CVSROOT/commitinfo - * CVSROOT/loginfo - + access to CVSROOT files is now available for - project admins only - -2004-05-06 15:40 UTC+0100 Ryszard Glab - * include/hbexpra.c - * source/common/expropt2.c - * source/compiler/expropta.c - * source/macro/macroa.c - ! Fixed optimalization of AT,ASC,LEN,CHR functions - in the macro compiler (this fixes GPF reported - by Alexander) - -2004-05-05 08:08 UTC+0200 Ilias Lazaridis - * source/codepage/cdpesdos.c - ! Whitespace reformatting - -2004-05-03 05:04 UTC+0200 Ilias Lazaridis - * source/include/hbinit.h - + added macro HB_USE_PRAGMA_STARTUP - - * source/include/hdcdpapi.h - + added macro HB_CODEPAGE_INIT - - * source/codepage/cdpesdos.c - ! used HB_USE_PRAGMA_STARTUP and HB_CODEPAGE_INIT - (changes are applyable to other cdp*.c files, too, but will wait - until cdpesdos.c is completely reworked) - -2004-05-02 09:25 UTC+0300 Chen Kedem - * doc/howtocvs.txt - * Change references to CVSROOT (according to SourceForge documents) - from cvs.Harbour-project.sourceforge.net - into cvs.sourceforge.net - -2004-04-30 16:09 UTC+0200 Ilias Lazaridis - + /cvsplay.txt - + Added file with tortoiseCVS to check CVS - functionality without influencing rest of project - - [Note: the above changelog time entry is possibly not correct] - - -2004-04-27 12:57 UTC-0500 Randy Portnoff - - * contrib/rdd_ads/adsfunc.c - - Changes to ADSCOPYTABLE as follows: - + added logical return value - + added second optional param for ADS filter option - + Now uses default index order if set - - Changes to ADSCOPYTABLECONTENTS as follows: - ! changed default filter option from ADS_IGNOREFILTERS to ADS_RESPECTFILTERS - + added second optional param for ADS filter option - + Now uses default index order if set - -2004-04-24 15:30 UTC+0100 Ryszard Glab - - * include/hbapi.h - * changed ULONG hb_objHasMsg into BOOL hb_objHasMsg - - * include/hbvmpub.h - * added - union { - PHB_FUNC pFunPtr; - int iStaticsBase; - } value - to HB_SYMB structure to remove pointer/int conversion - - * source/compiler/genc.c - * source/compiler/gencli.c - * source/rdd/dbf1.c - * source/rdd/delim1.c - * source/rdd/sdf1.c - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbfdbt/dbfdbt1.c - * source/rdd/dbffpt/dbffpt1.c - * source/rdd/dbfntx/dbfntx1.c - * source/rtl/symbol.prg - * source/vm/classes.c - * source/vm/dynsym.c - * source/vm/hvm.c - * source/vm/initsymb.c - * source/vm/macro.c - * source/vm/runner.c - * changed to use new HB_SYMB structure - * removed all pointer/long castings (except runner.c) - - -2004-04-22 18:00 UTC-0500 David G. Holm - * source/vm/itemapi.c - ! #if check for for RSXNT and EMX must be ahead of GNUC test - in the infinity test block, because RSXNT and EMX both use - the GNUC compiler, but use isfinite() instead of finite(). - -2004-04-22 17:30 UTC-0500 David G. Holm - * contrib/libct/files.c - * contrib/libnf/color2n.c - * contrib/libnf/dispc.c - * contrib/libnf/n2color.c - * contrib/rdd_ads/ads1.c - * source/vm/memvars.c - ! Eliminated most warnings issued by MinGW GCC compiler. - -2004-04-22 10:57 UTC+0300 Chen Kedem - * doc/dirstruc.txt - + Add oneliner description for: contrib/hbzlib/include, - contrib/hbzlib/Linux, - tests/bldtest - -2004-04-21 16:35 UTC+0300 Chen Kedem - * doc/en/rddord.txt - - Remove docs for: ORDKEY() $DESCRIPTION$ section, ORDLISTADD(), - ORDLISTCLEAR(), ORDLISTREBUILD(), ORDNAME(), - ORDNUMBER(), ORDSETFOCUS() - because of copyright violation! - -2004-04-20 16:30 UTC-0400 David G. Holm - * contrib/Makefile - + Added an ifeq section for bsd builds. - -2004-04-19 11:43 UTC+0300 Chen Kedem - * doc/en/rdd.txt - - Remove docs for: RDDLIST(), RDDNAME(), RDDSETDEFAULT(), __RDDSETDEFAULT() - because of copyright violation! (the file is now EMPTY) - - * doc/en/rdddb.txt - - Remove docs for: __DBCONTINUE(), __DBZAP() - because of copyright violation! - -2004-04-17 12:30 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/rtl/empty.c - * source/rtl/idle.c - * source/vm/arrays.c - * source/vm/estack.c - * source/vm/extend.c - * source/vm/itemapi.c - * added missing code to use HB_IT_POINTER just like - other value's type - You can use: - hb_retptr( void * pointer ) - hb_parptr( ) -> void * - hb_storptr( void * pointer, ...... ) - to return/manage pointers from low level functions. - For example: - p = GET_SOME_POINTER() - ? VALTYPE(p) //prints: 'P' - ? p //prints: 0x12345678 - - * tests/onidle.prg - * fixed to use values of pointer type - - * tests/tstmacro.prg - * added code to test TYPE() function - -2004-04-16 17:08 UTC-0800 Luis Krause Mantilla - * contrib/rdd_ads/adsfunc.c - Renamed adsGetConnectionType() as AdsGetTableConType() and added - adsGetConnectionType( [hConnect] ) from Brian Hays' implementation in xHarbour. - - Due to the recent changes introduced to Harbour that render FWH inoperable, - this is likely my last contribution to Harbour's CVS as I'll be using xHarbour - only with my FWH apps (I currently use FW/FWH 2.3c). - -2004-04-16 19:05 UTC+0300 Alexander Kresin - * hrbdll.bc - * Makefile for the harbour.dll is changed - + mkbcdll.bat - + Bat file is added to build the Harbour.dll. Changing appropriate - environment variables inside it, you may include/exclude from the dll - RDD ADS, CT, Libmisc, Debug libraries. - + tests/bld4dll.bat - + Bat file is added to build sample applications, which uses harbour.dll - -2004-04-16 13:55 UTC+0300 Alexander Kresin - * include/hbstack.h - * source/vm/hvm.c - * source/vm/itemapi.c - * source/vm/estack.c - * source/vm/dynsym.c - * source/rtl/dates.c - * source/rtl/file.c - * source/rtl/filesys.c - * HB_EXPORT is added to ITEM API, FILE API and some other function - definitions to make it possible to call them when they are in the dll. - -2004-04-14 19:05 UTC-0800 Luis Krause Mantilla - * contrib/rdd_ads/adsfunc.c - Added adsGetConnectionType() provided by Randy Portnoff - -2004-04-14 12:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - * tests/bldtest/Makefile - * fixed typo in file name - - * include/hbdefs.h - + added HB_COUNTER and HB_PTRDIFF types - first for reference - counters and second for any pointer differences and pointer to - integer conversions - this modification is synced with xHarbour - - * include/hbapi.h - * include/hbdefs.h - * source/rtl/philes.c - * source/vm/arrays.c - * source/vm/hvm.c - * source/vm/itemapi.c - * use HB_COUNTER type - -2004-04-09 15:00 UTC-0500 David G. Holm - * source/rdd/dbfntx/dbfntx1.c - ! Converted first parameter in the call to hb_fsCreateTemp from "" to - NULL in order to avoid having to provide a (BYTE *) type conversion - like the one that I added for the second parameter. - * source/rtl/fstemp.c - * Reformatted the code to match the Harbour coding style (in particular, - to use spaces instead of Tabs for indenting and to always use braces - for a code block that follows an if statement, even if only one line). - ! Added a null pointer check in the non-Unix code that checks the size - of the input arguments. - -2004-04-09 11:45 UTC+0100 Ryszard Glab - * source/debug/debugger.prg - * removed diagnostic ALERT call - -2004-04-09 10:10 UTC+0100 Ryszard Glab - * include/hbexpra.c - * include/hbexprop.h - * source/compiler/expropta.c - * source/macro/macroa.c - * source/vm/macro.c - * fixed my previous fix to correctly release memory in - the macro compiler - -2004-04-08 17:20 UTC+0100 Ryszard Glab - * include/hbexpra.c - * source/compiler/expropta.c - * source/macro/macroa.c - * source/vm/macro.c - * fixed bug cousing that some memory was deallocated - more then once - - * source/debug/debugger.prg - * fixed support for .T./.F. in command window - * fixed issues when the application was using - SET EXACT ON - -2004-04-06 15:40 UTC+0100 Ryszard Glab - * include/hbapi.h - * include/hbvm.h - * source/vm/hvm.c - * source/vm/macro.c - * fixed bug introduced earlier by me in the macro compiler: - PUBLIC ¯o - works correctly now - -2004-04-03 01:46 UTC-0300 Luiz Rafael Culik(culikr@brturbo.com> - * contrib/hbzlib/* - ! updated to use the same core as xharbour do - to compile on linux run ./lincompile.sh - This was done in respect to users that want to use harbour - - -2004-04-02 16:25 UTC+0100 Ryszard Glab - * source/compiler/gencli.c - * fixed warnings - - * source/rtl/cdpapi.c - *fixed warnings (Can the author of the code check if - I correctly parenthesized multiple || and && conditions?) - - * source/vm/classes.c - *fixed warning in gcc (commented out unused - static hb_clsScope function) - - * source/rdd/dbfntx/dbfntx1.c - * source/rtl/fstemp.c - * fixed hb_fsCreateTemp() to use 'mkstemp' on Unix - * fixed sorting procedure to use hb_fsCreateTemp - wrapper function - - * source/rtl/set.c - *hb_set.HB_SET_DIRSEPARATOR defaults to '/' on Unix - - -2004-04-02 13:15 UTC+0100 Ryszard Glab - * include/hbexpra.c - * include/hbexprop.h - * source/common/expropt1.c - * source/compiler/expropta.c - * source/macro/macro.y - * source/macro/macroa.c - * source/vm/macro.c - * fixed to release memory in cases where invalid - syntax was macro compiled - - * source/vm/itemapi.c - * fixed to correctly check for infinity on Unix - STR(LOG(-1)) no longer core dumps - - * source/rtl/filesys.c - * source/rdd/hbdbsort.c - * fixed to suppres warnings - - * source/pp/ppcore.c - * utils/hbtest/rt_misc.prg - * Clipper preproceses '**' into '^' - harbour too - -2004-04-02 12:17 UTC+0100 Antonio Linares - * source/rtl/fstemp.c - * source/rdd/dbfntx/dbfntx1.c - - Two linux linking time warnings removed - -2004-04-01 11:15 UTC+0100 Ryszard Glab - * include/hbexprb.c - * include/hbmacro.ch - * fixed support for strings as array of bytes - (in macro compiler) - * added a new #define HB_SM_ARRSTR as a flag - for HB_SETMACRO() to disable/enable strings - as array of bytes - - * source/vm/macro.c - * added HB_SM_ARRSTR support - * fixed TYPE() function to return correct value when an - assigment to undeclared variable is checked (Clipper - creates the memvar variable) - thanks to Phil Krylov - - * source/compiler/hbusage.c - * fixed typo for -ks switch - - -2004-04-01 09:09 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * source/common/hbffind.c - ! Fix for NT4 - - * source/rdd/dbsort.prg - * Fix by Mitja Podgornik - -2004-04-01 08:49 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) - - * bin/bld.bat - * Updated - -2004-03-31 21:45 UTC-0800 Luis Krause Mantilla - * source/rdd/workarea.c - + added scopped relations. Now OrdSetRelation() works with DBFCDX like it - does with Clipper 5.3b - * contrib/rdd_ads/ads1.c - + adsClearScope() method added to avoid r/t error with ADS and scoped relations - Thanks to Przemyslaw Czerpak for the fix (borrowed from xHarbour) - -2004-03-30 16:30 UTC+0100 Ryszard Glab - * include/hbapi.h - * source/vm/macro.c - * added HB_ITEM_PTR pError member to HB_MACRO structure - * fixed bug in macro compiler - calls to static - functions are not allowed in macro compiler - - * source/common/expropt1.c - * source/common/hbffind.c - *fixed minor warnings reported by Randy Portnoff - - * source/rtl/set.c - *SET(_SET_DEBUG) defaults to FALSE (Clipper compatible) - - * source/rtl/idle.c - *small optimization of hb_idleState() - - * source/compiler/harbour.y - *the compiler generates line number for DO CASE - (if debug info requested - to allow breakpoint) - - * source/debug/debugger.prg - *the debugger shows the line number for modules where - no source code is available - -2004-03-29 15:00 UTC-0500 David G. Holm - * source/pp/ppcore.c - ! Added missing type conversions on calls to hb_xgrab - and hb_xrealloc. - * source/rtl/memoline.c - ! Convert CR to space for Clipper compatibility. - -2004-03-25 09:35 UTC+0300 Alexander Kresin - * source/rdd/dbfcdx/dbfcdx1.c - ! minor fix - -2004-03-24 22:10 UTC+0300 Alexander Kresin - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbfcdx/dbfcdx1.h - * include/dbinfo.ch - * include/hbrddcdx.h - ! Some DBFCDX fixes, made by Przemyslaw Czerpak - borrowed from xHarbour. - -2004-03-24 10:08 UTC-0800 Luis Krause Mantilla - * source/rtl/tbcolumn.prg - ! fixed typo in comment - * source/rtl/tbrowse.prg - ! fixed initialization bug that miscalculated ::RowCount in ::Stabilize() - ! fixed ASSIGN freeze to return ::nFrozenCols (Clipper compatibility) - ! fixed ::RefreshCurrent() to validate ::aRedraw to avoid r/t error - ! fixed ::rect assignment in ::Configure (3rd param was ::nHeaderHeight - instead of ::nFooterHeight) - -2004-03-23 14:50 UTC+0100 Ryszard Glab - * source/pp/ppcore.c - * fixed parsing of nested #defines in command/translate - for example: - #define PRE_CHAR 'A' - #define IDX_EXPR(x) PRE_CHAR+x - INDEX ON IDX_EXPR(myfield) TO myfile - - * source/pp/pptable.c - * updated for fixes in ppcore.c (_DFSET define) - -2004-03-21 21:48 UTC-0800 Luis Krause Mantilla - * source/rtl/tbcolumn.prg - + added PreBlock and PostBlock instance variables for Clipper 5.3x compatibility - -2004-03-20 15:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) - + tests/bldtest/Makefile - + tests/bldtest/bldtest.c - + simple C program to check if Harbour can be compiled on - used machine / system / C compiler - -2004-03-19 11:40 UTC+0100 Ryszard Glab - * utils/hbmake/hbmake.prg - *fixed #define datediff(,) into datediff(x,y) - (Clipper compatibility) (thanks to Jacek Kubica) - -2004-03-19 08:20 UTC+0100 Ryszard Glab - * source/debug/debugger.prg - * fixed refreshing of watchpoints - - * source/pp/ppcore.c - * fixed bug introduced with my previous commit - - -2004-03-18 12:45 UTC+0100 Ryszard Glab - * include/hberrors.h - * source/pp/ppcore.c - *fixed #define parsing of pseudofunctions in cases where - passed argument has the same name as declared parameter - *fixed #define parsing of pseudofunctions - the following - syntax is not allowed: - #define test(x,x) - duplicated parameters - #define test(x,) - missing parameter - #define test(x - missing parenthes - - * source/common/expropt1.c - * fixed generation of pcode for &(macro)->() syntax - - * source/compiler/harbour.l - * fixed GPF when string with unmatched terminator was used - - - * include/hbexprop.h - * source/compiler/harbour.y - * removed direct access to internals of expression - optimizer structure - - * source/debug/debugger.prg - * fixed checking of path separator - -2004-03-17 8:14 UTC-0800 Luis Krause Mantilla - * contrib/rdd_sys/ads1.c - * reuploaded to CVS (somehow it didn't get through the last time) - -2004-03-11 16:01 UTC-0800 Luis Krause Mantilla - * contrib/rdd_sys/ads1.c - * NTX compatibility fix in adsOrderListFocus() to keep current order if - selected one fails - -2004-03-10 10:40 UTC+0300 Alexander Kresin - * source/rdd/dbfcdx/dbfcdx1.c - ! Initialization code fixed. - -2004-03-09 22:30 UTC+0300 Alexander Kresin - * hrbdll.vc - * file has been updated due to adding source/rtl/hbrandom.c. - * include/hbapiitm.h - * source/rdd/itemapi.c - * source/rdd/dbf1.c - * source/rdd/workarea.c - * source/rdd/dbfcdx/dbfcdx1.c - * more synchronization with xHarbour's RDD. - -2004-03-09 10:15 UTC-0800 Luis Krause Mantilla - * hrbdll.bc - * Added reference to missing hbrandom.c. Can a MSVC user sync hrbdll.vc? - -2004-03-09 13:50 UTC+0100 Ryszard Glab - + source/rtl/altd.prg - +new file with ALTD() procedure code - - * hrbdll.bc - * hrbdll.vc - * makefile.bc - * makefile.nt - * makefile.vc - * source/rtl/Makefile - *added a reference to rtl/altd.prg - - * source/common/hbffind.c - *fixed to compile correctly with HB_OS_UNIX - - * include/hbcomp.h - * include/hbexpra.c - * include/hbexprb.c - * include/hbexprop.h - * include/hbpcode.h - * source/common/expropt1.c - * source/compiler/expropta.c - * source/compiler/exproptb.c - * source/compiler/genc.c - * source/compiler/harbour.c - * source/compiler/harbour.y - * source/compiler/hbfix.c - * source/compiler/hbgenerr.c - * source/compiler/hbpcode.c - * source/macro/macro.y - * source/macro/macroa.c - * source/macro/macrob.c - * source/vm/hvm.c - +added missing support for @¯o and @M->memvar - +added new pcode HB_MACROPUSHREF (all sources have to be - recompiled) - - * source/debug/dbgtwin.prg - * source/debug/debugger.prg - *fixed procedures callstack when modules with/without debug info - are linked together - *fixed the debugger activation when ALTD() is used in - a module with no debug info (the debugger shows up - on the first line with debug info after the ALTD() - is called) - - NOTICE: - Some compilers may require that the debug library has to - be specified as an object file in order to get the - debugger linked in. - -2004-03-08 19:50 UTC+0300 Alexander Kresin - - + ChangeLog - + Started a new ChangeLog. - * source/rtl/ChangeLog.014 - * Renamed old ChangeLog, due to file size. - - * include/hbapifs.h - * include/hbmath.h - * include/hbrddcdx.h - * include/hbrdddbf.h - * include/hbrddntx.h - * include/hbrdddbt.h - * include/hbrddfpt.h - * include/hbset.h - - + source/rtl/hbrandom.c - * source/rtl/Makefile - * source/rtl/filesys.c - * source/rtl/set.c - * source/rdd/dbf1.c - * source/rdd/dbfntx/dbfntx1.c - * source/rdd/dbfcdx/dbfcdx1.c - * source/rdd/dbfcdx/dbfcdx1.h - * source/rdd/dbffpt/dbffpt1.c - - * Changes in DBF RDD, DBFCDX RDD, DBFFPT RDD, made by Przemyslaw Czerpak - and Giancarlo Niccolai, has been borrowed from xHarbour. - - * makefile.bc - * makefile.nt - * makefile.vc - * make files has been updated due to adding source/rtl/hbrandom.c. 2006-02-15 13:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/source/vm/hvm.c ! fixed memory leak I introduced changing Ryszard modifications diff --git a/harbour/ChangeLog.015 b/harbour/ChangeLog.015 new file mode 100644 index 0000000000..34fc3806d0 --- /dev/null +++ b/harbour/ChangeLog.015 @@ -0,0 +1,4607 @@ +/* + * $Id$ + */ + +/* Use this format for the entry headers: + YYYY-MM-DD HH:MM UTC[-|+]hhmm Your Full Name + For example: + 2002-12-01 13:30 UTC+0100 Foo Bar +*/ + +2006-02-15 11:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/compiler/harbour.c + * do not line striping optimization when -l compiler switch + (suppress line number information) is set - in such case it's only + waste of time + + * harbour/include/hbapifs.h + * harbour/source/common/hbfsapi.c + * harbour/source/compiler/cmdcheck.c + * harbour/source/pp/pplib.c + * harbour/source/rtl/filesys.c + * harbour/source/rtl/set.c + * cleaned the usage of hb_fsAddSearchPath()/hb_fsFreeSearchPath() + It fixes few possible memory leaks and GPF traps. + +2006-02-14 18:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/compiler/harbour.c + * enabled FM statistic by default when compiled without: + -DHB_FM_STATISTICS_OFF + after last Ryszard modification there is no memory leak in valid + .prg code so this may help us to find some unknown problems. + + * harbour/include/hbcomp.h + * harbour/source/compiler/hbpcode.c + * formatting + + * harbour/source/rdd/dbcmd.c + * fixed GPF in DBF2TEXT when work are is not in use. + + * harbour/source/rdd/dbfntx/dbfntx1.c + * disabled validation of unused index pages - Clipper left them + dirty so xHarbour reported that index is corrupted + + * harbour/source/rtl/dbdelim.prg + * generate 2001 RT error when work area is not in used() state + before export file is created. + + * harbour/source/rtl/errorapi.c + * set DOSERROR() to oError:OSCODE when RT error is generated + It's documented Clipper behavior. + + * harbour/source/vm/hvm.c + * some fixes in new operators and removed unnecessary + long->double->long conventions + +2006-02-14 16:10 UTC+0100 Ryszard Glab + * include/hbapiitm.h + * include/hbexpra.c + * include/hbexprc.c + * include/hbexprop.h + * source/compiler/expropta.c + * source/compiler/exproptb.c + * source/compiler/exproptc.c + * source/macro/macroa.c + * source/macro/macrob.c + * source/macro/macroc.c + * source/vm/hvm.c + * source/vm/itemapi.c + * fixed code for adding date and numeric values (introduced + in my last commits) + * removed hb_itemPutBHLong (use hb_itemPutNInt instead) + * added more optimization for localvar+=integer + using HB_P_LOCALNEARADDINT pcode + (borrowed from xHarbour) + +2006-02-14 14:40 UTC+0100 Ryszard Glab + * include/hbexprc.c + * source/compiler/exproptc.c + * source/macro/macroc.c + * disabled optimalization of compound assignment in macro compiler + +2006-02-14 13:40 UTC+0100 Ryszard Glab + * include/hbexprc.c + * source/compiler/exproptc.c + * source/macro/macroc.c + * disabled optimalization of compound assignment for fields + +2006-02-14 11:40 UTC+0100 Ryszard Glab + * include/hbapiitm.h + * include/hbcomp.h + * include/hbexpra.c + * include/hbexprb.c + * include/hbexprc.c + * include/hbexprop.h + * include/hbpcode.h + * source/common/expropt1.c + * source/common/hbfsapi.c + * source/compiler/expropta.c + * source/compiler/exproptb.c + * source/compiler/exproptc.c + * source/compiler/genc.c + * source/compiler/harbour.c + * source/compiler/harbour.l + * source/compiler/harbour.y + * source/compiler/hbdead.c + * source/compiler/hbfix.c + * source/compiler/hbpcode.c + * source/compiler/hbstripl.c + * source/macro/macro.y + * source/macro/macroa.c + * source/macro/macrob.c + * source/macro/macroc.c + * source/pp/ppcore.c + * source/vm/hvm.c + * source/vm/itemapi.c + * fixed many more memory leaks in the compiler + (the Harbour code compiles itself with no memory leaks). + However there are still leaks when the compiler aborts + compilation due to errors. + + added optimalization of '+=' '-=' '*=' '/=' operators + + added hb_itemGetNDDec(), + hb_itemPutHBLong(), + hb_itemPutNumType() + borrowed from xHarbour + + NOTE: new pcodes: + HB_[PLUS|MINUS|MULT|DIV]EQ + HB_[PLUS|MINUS|MULT|DIV]EQPOP + recompile all sources. + +2006-02-12 14:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbapi.h + * harbour/include/hbdefs.h + * cleaned BOOL usage + + * harbour/include/hbcomp.h + * harbour/include/hbpp.h + * harbour/source/compiler/harbour.l + * harbour/source/compiler/harbour.sly + * harbour/source/compiler/harbour.y + * harbour/source/pp/ppcomp.c + * harbour/source/pp/ppcore.c + * harbour/source/pp/pplib.c + * harbour/source/pp/pragma.c + * keep functions and public variables definitions in header files. + Do not use any extern ... in source code to aviod possible mistakes + ! fixed some mistakes in BOOL/int declarations + * use hb_fsFreeSearchPath() to free allocated path list + + * harbour/source/compiler/harbour.c + * keep functions and public variables definitions in header files. + + added memory statistic module - it's disabled now because too + much errors is reported. + Ryszard I hope it will help in locating memory leaks in compiler. + * begun of cleaning static variables to make compiler code + ready for reentrance. + + * harbour/source/rtl/gtstd/gtstd.c + ! fixed cursor positioning + + * harbour/config/os2/gcc.cf + + added socket library + + + harbour/tests/ctwtest.prg + + added CTWIN test program + + + harbour/contrib/dot/Makefile + + added GNU Makefile + +2006-02-12 11:15 UTC+0100 Antonio Linares + * harbour/include/hbdefs.h + * minor fix to avoid conflict with Darwin and Cocoa BOOL use + +2006-02-11 16:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/compiler/harbour.c + * do not strip redundant line information when compiled for debug (-b) + + * harbour/source/compiler/harbour.y + ! fixed typo in hb_compSequenceFinish() call - Ryszard please check me. + using iNumber instead of lNumber caused that on big endian machines + begin sequence / endsequence block was stripped + + * harbour/source/compiler/hbdead.c + ! fixed stupid typo in counting length of debug variable/module names + +2006-02-11 13:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/Makefile + * added missing header files + + * harbour/source/compiler/harbour.c + * added support for @filelst[.clp] - partially borrowed from xHarbour + It's not exactly the same as in Clipper because Clipper creates + one final file when [x]Harbour series of files. + To make it like in Clipper we will have to add support from more + then one symbol table in the final file. It will be also useful + for proper implementation of: + DO + Now in [x]Harbour it works like #include .prg when in Clipper + also new symbol table is created for included files. The difference + can be easy sync when current file has static functions with exactly + the same names as the one included by DO - compilation fails. + * add HB_P_ENDBLOCK to PCODE with codeblock body before run any + optimization - it fixes pcode tracing in jump optimization and + also allow to make some validation of generated PCODE + + * harbour/source/rdd/dbstrux.prg + * harbour/source/rdd/dbtotal.prg + * removed not longer necessary temporary alias creation. Harbour + support empty aliases ("") like Clipper. + + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rtl/hbgtcore.c + * casting + + * harbour/source/rtl/gtos2/gtos2.c + ! fixed hb_gt_os2_GetScreenContents() + +2006-02-11 12:40 UTC+0100 Ryszard Glab + * source/compiler/harbour.c + * source/compiler/harbour.y + * source/pp/ppcore.c + * added tracing code + * fixed one more memory leak + +2006-02-09 15:25 UTC+0100 Ryszard Glab + * source/compiler/harbour.c + * fixed to release memory allocated with the proeprocessor + + * tests/mousetst.prg + * minor fix after latest Przemek changes + + * source/pp/ppcore.c + * fixed bug in processing the list of optional repeatable code + reported by Lorenzo + +2006-02-09 12:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/bin/bld.cmd + + added -ldbffpt, -lhbsix, -lhsx libraries for GCC OS2 linking + + * harbour/config/os2/gcc.cf + * harbour/contrib/libct/files.c + + some cleanups for OS2 - please check me. + + * harbour/source/rtl/gtos2/gtos2.c + + implemented hb_gt_os2_GetScreenContents() - please check me + + * harbour/include/Makefile + + added missing hbfixdj.h + + * harbour/source/rtl/gtdos/gtdos.c + ! for screen synchronization after PostExt() + +2006-02-09 03:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rtl/gtapi.c + * minor modifications for GTs which may no flush data in PreExt() + + * harbour/source/rtl/gtwin/gtwin.c + ! fixed Init() code by adding missing SUPER_INIT() + * modified a little bit PreExt() and PostExt() methods + +2006-02-08 20:23 UTC+0100 Antonio Linares + * makefile.nt + * makefile64.nt + * updated with recent changes + +2006-02-08 18:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rtl/gtwin/gtwin.c + + added PreExt() and PostExt() methods + +2006-02-08 15:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rdd/dbcmd.c + ! warning I introduced in last commit cleanup + +2006-02-08 14:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rtl/gtdos/gtdos.c + * updated copyright message with authors from removed mousedos.c + + * harbour/include/hbgtcore.h + * harbour/source/rtl/hbgtcore.c + * harbour/source/compiler/harbour.c + ! fixed BOLL / int typos + + * harbour/source/vm/eval.c + * minor modification + + * harbour/source/rdd/dbf1.c + * enable 'Y' (currency) fields - translated to HB_IT_DOUBLE + + * harbour/source/rdd/dbcmd.c + ! fixed some wrong behavior in SORT parameters setting in __dbArrange() + + * harbour/source/rdd/dbsort.prg + ! removed hack with COPY TO ... when lastrec()==1 + which introduced new bugs + * harbour/source/rdd/hbdbsort.c + ! fixed sort output when only one record is sorted + There are still some problems with sort like sorting numeric + fields as ASCII strings or using strcmp what will not work + with binary fields but all all this code should be rewritten + due to unacceptable performance so I left it as is to some + spare time in the future. + + * harbour/source/rtl/gtwin/gtwin.c + ! save cursor position at startup + + * harbour/source/rtl/net.c + * harbour/source/rtl/gtos2/gtos2.c + * harbour/contrib/hgf/os2pm/os2pm.c + * some warnings cleaned and updates for new API in OS2 build + +2006-02-07 20:03 UTC+0100 Antonio Linares + * source/vm/mainwin.c + * minor fix + +2006-02-07 18:20 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * source/vm/mainwin.c + ! Fixed previous commit. + +2006-02-07 12:20 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * makefile.bc + + Updated for latest changes. + + * bin/bld.bat + + Added codepage lib. + + * source/codepage/cdpbg866.c + * source/codepage/cdpbgiso.c + * source/codepage/cdpbgwin.c + + Added two missing chars to BG alphabet. + + * source/vm/arrays.c + * source/vm/mainwin.c + * source/rtl/hbgtcore.c + * include/hbapigt.h + * source/rtl/gtpca/gtpca.c + * source/rtl/gtstd/gtstd.c + ! Fixed recent compiler warnings. + +2006-02-05 09:47 UTC+0200 Chen Kedem + * source/rtl/gtos2/gtos2.c + * Restore my copyright notice for functions used to be in mouseos2.c + +2006-02-04 17:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/harbour.spec + * harbour/make_bsd.sh + * harbour/make_drw.sh + * harbour/make_gnu.sh + * harbour/make_rpm.sh + * harbour/make_tgz.sh + * harbour/bin/hb-func.sh + * harbour/bin/pack_src.sh + * harbour/config/c.cf + * harbour/config/global.cf + * harbour/config/rules.cf + * harbour/config/darwin/gcc.cf + * harbour/config/darwin/global.cf + * harbour/config/dos/djgpp.cf + * harbour/config/dos/global.cf + * harbour/config/dos/install.cf + * harbour/config/dos/owatcom.cf + * harbour/config/hpux/gcc.cf + * harbour/config/hpux/global.cf + * harbour/config/linux/gcc.cf + * harbour/config/linux/global.cf + * harbour/config/linux/owatcom.cf + * harbour/config/sunos/gcc.cf + * harbour/config/w32/watcom.cf + * include ADSRDD by default in RPMs + * updated for new RPM which does not accept some old tags + * set -fPIC on 64bit platforms + + added /etc/harbour/hb-charmap.def + * updated for new GT system and drivers + + * harbour/contrib/dot/pp.prg + * harbour/contrib/dot/pp_harb.ch + * use _APMAIN as startup function + * cleaned direct access to item internals + + * harbour/contrib/libct/Makefile + + harbour/contrib/libct/ctwfunc.c + + harbour/contrib/libct/ctwin.c + + harbour/contrib/libct/ctwin.h + * added CT3 like Window System - it's a GT driver which inherits + from the existing one and adds CTW functionality + + * harbour/contrib/libct/screen1.c + * updated for GTAPI modifications + + * harbour/contrib/libnf/Makefile + * harbour/contrib/libnf/chdir.c + * harbour/contrib/libnf/mkdir.c + * harbour/contrib/libnf/rmdir.c + * use hb_fs*() API functions instead of calling DOS interrupts + Now NF dir functions works on all platforms - it will be nice + to update other functions too. + + * harbour/contrib/libnf/dispc.c + * harbour/contrib/libnf/ftattr.c + * updated for GT API modifications, some of this code still depends + on EGA/VGA video buffer so will work only if user will force in GT + using it - it will be nice to rewrite them + + * harbour/contrib/odbc/odbc.c + * harbour/contrib/ole/ole2.c + * casting and cleaning direct access to item internals + + * harbour/contrib/rdd_ads/ads1.c + * harbour/contrib/rdd_ads/adsfunc.c + * harbour/contrib/rdd_ads/adsmgmnt.c + * synced with xHarbour + + * harbour/include/Makefile + * added new header files + + + harbour/include/hbgtinfo.ch + + added GTI_* defintions for hb_gtInfo() function. + This function works in similar way to dbInfo() in RDD. + The GTI_* definitions are taken from xHarbour "as is" and + they should be cleaned - not all functionality are supported + in Harbour and some others should be implemented in differ + way then in xHarbour. + + + harbour/include/hbgtcore.h + * harbour/include/hbapigt.h + * new GTAPI + hbgtcore.h file should not be included by user code + it's only for internal use in GT drivers + * HB_inkey_enum changed to int - this is bit field not enumerated type. + Many of C/C++ compilers forbid bit operations on enum types and + forcing it by casting which finally exceeds the enum range is defined + as bug because it may badly interacts with some compiler optimizations + + * harbour/include/hbapi.h + * harbour/include/hbapicdp.h + * harbour/include/hbapierr.h + * harbour/include/hbapifs.h + * harbour/include/hbapiitm.h + * harbour/include/hbapilng.h + * harbour/include/hbapirdd.h + * harbour/include/hbdate.h + * harbour/include/hbdefs.h + * harbour/include/hbinit.h + * harbour/include/hbpcode.h + * harbour/include/hbrdddbf.h + * harbour/include/hbset.h + * harbour/include/hbstack.h + * harbour/include/hbvm.h + * harbour/include/hbvmopt.h + * harbour/include/hbvmpub.h + * separated internal and external API. Now the definitions for + internal HVM structures and functions are excluded by default + they could be enabled if user include hbvmopt.h before other + header files. Such operation should be done _ONLY_ by core + code - if 3-rd party developers make sth like that then it's + for their own risk and such code may stop to work with next + Harbour versions. Without hbvmopt.h the internal structures + like HB_ITEM, HB_DYNS, ... are mapped to 'void' so there is + no way to access their members so we can modify them in the + future without afford for 3-rd party code. + There is one small exception 'type' should be the first member + for HB_ITEM structure because I used a small ugly hack in + HB_IS_*() macros with castin PHB_ITEM to HB_TYPE* - it works + without speed overhead but if you think that it will be + better/cleaner to not use such tricks then it's enough to + change HB_ITEM_TYPE() definitions in hbvmpub.h - see note. + * cleared the usage of HB_EXPORT - to avoid problems with some C/C++ + compilers we agreed that the only one common way of using HB_EXPORT + is adding it ad begining of declaration - please keep this convention + in the future. + + added new functions: + hb_extIsObject(), hb_codeblockId(), hb_idleSleep(), + hb_fsGetOsHandle(), + hb_dynsymFindSymbol(), hb_dynsymGetSymbol(), + hb_dynsymSymbol(), hb_dynsymName(), + hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle() + * changed hb_arrayClone() declaration to: + PHB_ITEM hb_arrayClone( PHB_ITEM pArray ) + * changed hb_arrayFromParams() declaration to: + PHB_ITEM hb_arrayFromParams( int iLevel ) + The previous version needed a pointer to stack relocatable area + so any stack resizing could cause GPF. + + * harbour/include/inkey.ch + * added definitions for extended mouse keys/events and some key + combinations + + * harbour/source/codepage/uc1250.c + * harbour/source/codepage/uc1251.c + * harbour/source/codepage/uc1253.c + * harbour/source/codepage/uc1257.c + * harbour/source/codepage/uc737.c + * harbour/source/codepage/uc850.c + * harbour/source/codepage/uc852.c + * harbour/source/codepage/uc866.c + * harbour/source/codepage/uc88591b.c + * harbour/source/codepage/uc8859_1.c + * harbour/source/codepage/uc8859_2.c + * harbour/source/codepage/uc8859_5.c + * harbour/source/codepage/uckoi8.c + * harbour/source/codepage/uckoi8u.c + * harbour/source/codepage/ucmaz.c + * updated unicode values for characters in rabge 1-31 to keep + DOS compatibility + + * harbour/source/common/expropt1.c + * harbour/source/common/hbarch.c + * harbour/source/common/hbdate.c + * harbour/source/common/hbstr.c + * harbour/source/common/hbver.c + * keep HB_EXPORT at the beginning of function declaration + + * harbour/include/hbpcode.h + * harbour/include/hbcomp.h + * harbour/source/compiler/harbour.c + * harbour/source/compiler/harbour.y + * harbour/source/compiler/hbfix.c + + harbour/source/compiler/hbdead.c + * harbour/source/compiler/hbpcode.c + + harbour/source/compiler/hbstripl.c + % rewritten jump optimization + ! fixed some minor problems + * do not optimize jumps and local variable access by shorter + PCODE version and HB_P_NOOP when jump optimization is + disabled, this is a note I left in source code in few places: + /* + * optimizing jumps here by shorting them and setting HB_P_NOOPs + * only slow down the compilation process for three reasons: + * 1. When it's dummy jump to next instruction we need two passes + * in hb_compOptimizeJumps() to fully remove it + * 2. hb_compOptimizeJumps() also make jump shortcutting in each pass + * 3. When Jump Optimization is disabled (-kJ) then it cause slowness + * at runtime because we will have more HVM loops: first for the + * shorter jump and next for the HB_P_NOOP PCODE(s) + * [druzuz] + */ + + + added support for multi passes in jump/dead code elimination + (hb_compOptimizeJumps()) + By default is set upto three passes. + Now hb_compOptimizeJumps() keeps all compiler internal data clean + on exist and can be called any times and does not change other + compiler's functions behaviors + + added dummy jumps elimination + + added optimization for: + IF .T. + IF .F. + WHILE .T. + WHILE .F. + etc. + * restored empty BEGIN/RECOVER sequence block elimination + if Jump Optimization is enabled then it marks the block + with HB_P_NOOPS else it cut the generated PCODE + + added dead code eliminator (new functions hb_compCodeTraceMarkDead()/ + hb_compPCodeTrace() - it works only when Jump Optimization is + not disabled) + As a result of the above we have smaller and faster PCODE. + + I do not think that we will have meta code support in the reasonable + time and because I need some valid compiler data/structures like + updated table of all jumps for real C code (not PCODE in .c files) + generation then I decide to make some modifications and the above + is in practice a side effect of this work. + + * harbour/source/rdd/dbcmd.c + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/rddord.prg + * harbour/source/rdd/workarea.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/rdd/nulsys/nulsys.c + * synced with my modifications in xHarbour + * updated for API modifications + + * harbour/source/rtl/Makefile + + added gtsys.c, gtfunc.c, hbgtcore.c + + * harbour/source/rtl/accept.c + * harbour/source/rtl/alert.prg + * harbour/source/rtl/cdpapi.c + * harbour/source/rtl/console.c + * harbour/source/rtl/dates.c + * harbour/source/rtl/do.c + * harbour/source/rtl/errorapi.c + * harbour/source/rtl/errorsys.prg + * harbour/source/rtl/file.c + * harbour/source/rtl/fserror.c + * harbour/source/rtl/fstemp.c + * harbour/source/rtl/hbffind.c + * harbour/source/rtl/idle.c + * harbour/source/rtl/math.c + * harbour/source/rtl/oldclear.c + * harbour/source/rtl/strmatch.c + * harbour/source/rtl/strpeek.c + * harbour/source/rtl/valtype.c + * harbour/source/rtl/xsavescr.c + * updated for API modifications + * cleaned some compiler warnings + + * harbour/source/rtl/filesys.c + + added hb_fsGetOsHandle() + * updated for API modifications + + * harbour/source/rtl/gt.c + * harbour/source/rtl/gtapi.c + * harbour/source/rtl/gtapiu.c + + harbour/source/rtl/gtfunc.c + + harbour/source/rtl/gtsys.c + + harbour/source/rtl/hbgtcore.c + * harbour/source/rtl/inkey.c + * harbour/source/rtl/maxrow.c + * harbour/source/rtl/mouseapi.c + * harbour/source/rtl/setcolor.c + * harbour/source/rtl/setposbs.c + * harbour/source/rtl/shadow.c + * new GT API code + + * harbour/source/rtl/saverest.c + * changed default behavior in SEVESCREEN/RESTSCREEN with parameters + out of screen range to be Clipper compatible. Added last logical + parameter to keep previous behavior for programs which begins to + use it. + + * harbour/source/rtl/seconds.c + * include missing header file to fix C++ compilation + * make hb_secondsCPU global function + + * harbour/source/rtl/set.c + * make HB_SET_TYPEAHEAD Clipper compatible + + * harbour/source/rtl/gtcgi/Makefile + * harbour/source/rtl/gtcgi/gtcgi.c + - harbour/source/rtl/gtcgi/mousecgi.c + * rewritten for new GT API + some detail behaviors has been changed but I think the current + implementation is better for CGI programs output - please check + and fix me if necessary + + * harbour/source/rtl/gtcrs/Makefile + - harbour/source/rtl/gtcrs/charmap.prg + + harbour/source/rtl/gtcrs/chrmap.c + - harbour/source/rtl/gtcrs/debug.map + - harbour/source/rtl/gtcrs/eterm.map + * harbour/source/rtl/gtcrs/gtcrs.c + + harbour/source/rtl/gtcrs/gtcrs.h + + harbour/source/rtl/gtcrs/hb-charmap.def + - harbour/source/rtl/gtcrs/kbdcrs.c + - harbour/source/rtl/gtcrs/keymap.prg + - harbour/source/rtl/gtcrs/linux.map + - harbour/source/rtl/gtcrs/mousecrs.c + * new GTCRS based on my xHarbour and Flagship curses code + Please not that at runtime it looks for a file + /etc/harbour/hb-charmap.def where user can fully tune output + for his terminal. This file is included with proper path in + binaries created by make_rpm.sh and make_tgz.sh + Ryszard I've removed some of your extensions which are no longer + necessary and some other (keyboard sequence redefinition) should + be done in a little bit differ way. I would like to talk about it + when you test current code. + Added support for extended mouse keys (middle button and wheel). + + * harbour/source/rtl/gtdos/Makefile + * harbour/source/rtl/gtdos/gtdos.c + - harbour/source/rtl/gtdos/mousedos.c + * rewritten for new GT API + Fixed some small problems, finished mouse code which for DJGPP + is fully Clipper compatible with real mouse SAVE/RESTORE code. + For other compilers it should be updated depending on memory + model and used DPMI driver (if any). + + * harbour/source/rtl/gtos2/Makefile + * harbour/source/rtl/gtos2/gtos2.c + - harbour/source/rtl/gtos2/mouseos2.c + * rewritten for new GT API + Fixed some problems and finished the mouse code. + Please test it - I made all modifications without OS2 and + I was not able to make any test. I'm interesting in information + if it works and the speed difference - f.e. results from + tests/vidtest.prg run with previous and current version. + + * harbour/source/rtl/gtpca/Makefile + * harbour/source/rtl/gtpca/gtpca.c + - harbour/source/rtl/gtpca/kbdos2.gcc + - harbour/source/rtl/gtpca/mousepca.c + * rewritten for new GT API + and finished so now it's full functional GT driver + I'm interesting in keyboard sequences used by PC-ANSI drivers + in DOS so it will be possible to implement also support for + extended keys input. + + * harbour/source/rtl/gtsln/Makefile + * harbour/source/rtl/gtsln/gtsln.c + + harbour/source/rtl/gtsln/gtsln.h + * harbour/source/rtl/gtsln/kbsln.c + * harbour/source/rtl/gtsln/keytrans.c + * harbour/source/rtl/gtsln/mousesln.c + * rewritten for new GT API basing on current xHarbour code + added support for slang 1.4x patched for UNICODE (Debian + patches used by most of current Linux distributions) and + slang 2.x - It's unicode ready, tries to detect terminal mode + (utf-8/iso) at startup and switch the internal logic to + iso/unicode mode. When compiled with slang 1.4x or 2.x + and terminal is in UTF-8 it can display all characters like + in DOS if only used font have them or good fall-back table is + loaded (f.e. the one created by QRCZAK) + Added support for extended mouse keys (middle button and wheel). + + * harbour/source/rtl/gtstd/Makefile + * harbour/source/rtl/gtstd/gtstd.c + - harbour/source/rtl/gtstd/mousestd.c + * rewritten for new GT API + Now it can work as full screen GT driver redrawing the previous + screen contents from internal GT core buffers. I run with this + GT some of my programs and they work quite well ;-) of course + without colors. + + * harbour/source/rtl/gtwin/Makefile + * harbour/source/rtl/gtwin/gtwin.c + - harbour/source/rtl/gtwin/mousewin.c + * updated for new GT API + + + harbour/source/rtl/gtxwc/Makefile + + harbour/source/rtl/gtxwc/gtxwc.c + + harbour/source/rtl/gtxwc/gtxwc.h + * new XWindow Console GT driver based on my and Giancarlo Niccolai + code form xHarbour - this GT can work in XWindow environment only + and create its own window for console output. It delays the + initialization to the moment when user try to display anything on + the screen so even without X Window system programs which uses this + GT can work as long as use only outstd/outerr output. + + * harbour/source/vm/arrays.c + * updated for API modifications + + added hb_arrayId(), + * changed hb_arrayClone() declaration to: + HB_EXPORT PHB_ITEM hb_arrayClone( PHB_ITEM pSrcArray ) + * changed hb_arrayFromParams() declaration to: + PHB_ITEM hb_arrayFromParams( int iLevel ) + + * harbour/source/vm/arrayshb.c + * updated for API modifications + + added new parameter iLevel to function HB_APARAMS() + + * harbour/source/vm/classes.c + * harbour/source/vm/cmdarg.c + * harbour/source/vm/dynlibhb.c + * harbour/source/vm/estack.c + * harbour/source/vm/fm.c + * harbour/source/vm/garbage.c + * harbour/source/vm/maindll.c + * harbour/source/vm/maindllh.c + * harbour/source/vm/maindllp.c + * harbour/source/vm/mainstd.c + * harbour/source/vm/mainwin.c + * harbour/source/vm/memvars.c + * harbour/source/vm/pcount.c + * harbour/source/vm/proc.c + * updated for API modifications + + * harbour/source/vm/codebloc.c + * updated for API modifications + + added hb_codeblockId() + + * harbour/source/vm/dynsym.c + * updated for API modifications + + added new functions: + hb_dynsymFindSymbol(), hb_dynsymGetSymbol(), + hb_dynsymSymbol(), hb_dynsymName(), + hb_dynsymMemvarHandle(), hb_dynsymAreaHandle(), hb_dynsymSetAreaHandle() + + * harbour/source/vm/eval.c + * updated for API modifications + * call hb_vmPushState()/hb_vmPopState() in hb_itemDo()/hb_itemDoC() + functions - it's necessary to make HVM reentrant safe. + + * harbour/source/vm/extend.c + * updated for API modifications + + added hb_extIsObject() similar to existing hb_extIsArray() + + * harbour/source/vm/hvm.c + * updated for API modifications + + added new functions: hb_vmPushState(), hb_vmPopState() + which save/restore HVM state (the top stack value which can be + processed and return item and maybe sth else in the future) making + HVM ready for reentrant. + + * harbour/source/vm/itemapi.c + * updated for API modifications + + added new function: + HB_EXPORT PHB_SYMB hb_itemGetSymbol( PHB_ITEM pItem ); + ! fixed bug in hb_itemPutNInt() + + * harbour/tests/Makefile + * harbour/utils/hbdoc/Makefile + * harbour/utils/hbextern/Makefile + * harbour/utils/hbmake/Makefile + * harbour/utils/hbrun/Makefile + * harbour/utils/hbtest/Makefile + - removed badly added: dbfntx, dbfcdx, dbffpt, hbsix libraries. + what broke GNU make compilation for some compilers + This libraries should be included automatically when RDD lib + is included by *.cf files + + Summary: + The whole patch (cvs diff -uN) is ~1.5MB length and I cannot describe + everything in details - sorry but it was too much modifications in + one commit so now just some of general notes. + The header files included as is does not have any information about + internal HVM structures and some functions. In practice only HB_SYMB + is public and it has to be public for .c files generated from .prg + so I force the fixed size of this structure (alignment independent) + by redefining some members to union with void * - it's a little bit + ugly trick but it effectively eliminates the problem of linking + binaries compiled with differ alignment C compiler switches. + The structures like HB_ITEM, HB_CODEBLOCK, HB_STACK, HB_DYNS are not + longer defined and pointers to the defined as void * - like in Clipper + the ITEM structure. It caused that I had to add some new functions + to make some operation still possible to implement. If I missed sth + and any of you will have a problem with your code then please inform + me about it and after a small discussion on Harbour developers list + we can decide if other functions should be added. + The internal API is still accessible. It's enough to include "hbvmopt.h" + file before other header files to enable it. Now only files in + source/vm directory include it. + The 3-rd party code which does not include hbvmopt.h (or tries to + set some internals macros) should be safe for future HVM modifications + and will work also with new binaries so 3-rd party library developers + should remember about it. If they won't then it's only their and + their clients problem not Harbour developers. + With this modifications I also create new GT model which is similar + to the one used by RDD with multi inheritance. It can be quite easy + extended to simultaneously load more then one GT subsystem (sth like + work areas in RDD) but I left it for the future when someone may + need it. hbapigt.h file now contains only information about public + functions and does not have any code which depends on current + internal implementation - it should be backword compatible as long + as somone did not try to use internal GT functions. + The internal GT system use hbgtcore.h file which should not be + included by 3-rd party code as long as someone will not make new + GT driver. The internal GT code is new so I expect that it will + be changed yet in the nearest future (I'm waiting for other developers + feedback) and in such case any 3-rd party GTs will have to be updated. + How it works: + The base GT driver (GTNUL) is fully functional GT driver which + makes all operations on memory buffer. After each screen write + Flush() method is called which check for dispcount() and if + it's 0 then call Refresh() method to update modified area by + Redraw() method. This method is dummy in GTNUL and external + output with this GT can be reached by outstd()/outerr() which + are now redirected to GT methods. A simple GT driver may overload + only Refresh() method to give full screen output. + Application can use only this GT driver and it seems to be very + good choice for GUI and background daemon/service programs. + This GT is loaded at startup then all other GTs can be loaded + later and inherit from the previously loaded GT drivers. + The new GT driver can overload as much method as wants/needs. + Now all GT operations are implemented as GT method so GT driver + can easy change their default behavior, f.e. it may fully overload + color parsing methods and use differ or extended to Clipper color + definitions. + I rewrote all existing GTs to work with new GT model. + OS2 users - please test GTOS2 which I was not able to test and + see the note in Redraw() method. If possible please make some + speed tests. + In fact now there is much more internal operations then it was + before but because they are done on memory only then current + code is much faster in this GT drivers which so far makes all + operations on real video area. I made some tests with GTNUL + and tests/vidtest.prg and the total overhead is minimal. Now + dipbegin()/dispend() in practice does not cost anything so it + gives additional speed improvement in application which extensively + use it. + More then one GT driver can be linked with final binaries and + chose on application startup by //GT switch and/or environment + variable HB_GT= + In the RTL is new GT function GTSYS() which works in similar way + to RDDSYS() in RDD subsystem and for linking default GT driver + for given platform. When RTL is compiled the default GT driver + is set to HB_GT_DEFAULT envvar and if not exist to HB_GT_LIB + envvar and if it also does not exist to hard coded platfom GTs + (see source/rtl/gtsys.c and source/rtl/Makefile for rules) + Adding to source code: + ANNOUNCE GTSYS + disable linking the default GT driver and: + REQUEST HB_GT_ + for linking given () GT driver, f.e.: REQUEST HB_GT_WIN + If you are working in SH environment (Linux and other *nixes users, + DJGPP bash, MinGW shell then it's possible to use -gt switch + in hblnk / hbmk scripts to force linking GT drivers (it could be + repeated with different ) and the first one becomes the default + one. F.e.: + xhbmk -m -n -w -es2 -gtcrs -gtsln -gtstd -gtpca vidtest.prg + Usually the GT driver are loaded at HVM startup but it's possible + to load it later. I created new GT driver CTW which gives full + CT3 like Window system. The CT3 extended driver change the behavior + of some function in Clipper extended driver, f.e WRITECON() or + SETPOS() with parameters out of screen range. So I implemented it + CTW as RT GTs which is loaded when some of CTWIN function is used + (f.e. WOPEN()/WBOARD()) and inherits from any existing GT driver. + This is full CT3 WIN implementation with all detail behaviors I + found (with some CT3 bug fixes). It does not have any CT3 limitations + and can be used for any virtual screen/window size though I hardcoded + CT3 limitation for backword compatibility. If somone will want to + remove it then it will be enough to delete few lines from ctwin.c + file. I'm not CTWIN Clipper user so maybe I missed some side effects + in this driver and was not able to well test it so if you will find + any incompatibilities then please inform me. + THe default GT buffer uses 32bit character cell internally but + in savescreen/restscreen it uses VGA compatible two bytes character + cell. Some GT drivers may want to use differ character cell. + Now GTCRS and GTSLN use 32bit character cell by default. They + need additional information about character set (box/normal) to + properly display box characters. It is possible to force in this + GT drivers using Clipper compatible character cell by calling: + hb_gtInfo( GTI_COMPATBUFFER, ) -> + but in may cause that box drawing characters will be lost in + some countries after RESTSCREEN(). It will depend on used code + page. + HB_GTINFO() is new function which works in similar way to DBINFO() + in RDD. It allows to retrieve/change some of GT driver settings. + GTI_* actions are defined in hbgtinfo.ch - it has all GTI_* + definitions used in xHarbour. Now in Harbour only few of them + are implemented. + The new three .prg functions: + HB_SETKEYCP( [,] ) + HB_SETDISPCP( [,] [,] ) + HB_SETTERMCP( [,] [,] ) + have been added. They set automatic input (HB_SETKEYCP) + and output (HB_SETDISPCP) (or both: HB_SETTERMCP) character + translation. They are also important for some GTs which + informing them about used internal code page for unicode + translation (GTXWC, GTSLN) and/or chosing proper character + set (standard/alternate) for letters and other (f.e. box + drawing characters) (GTCRS, GTSLN), + is encoding used on external (terminal) side + is encoding used internally, if not given then + current code page set HB_SETCODEPAGE() is used. + some of GTs which uses unicode output may + ignore + is optional parameter which interacts with dispbox() + output disabling switching to alternate character + set in some GTs. It effectively causes that if internal + (host) code page contains some letters on the box char + positions then they will be shown also by box drawing + functions like dispbox() instead of CP437 characters. + In some cases it could be useful. By default lBoxChar + is not set and GTs which can switch between standard + and alternate character set (GTCRS, GTSLN) will try to + use alternate character set for box drawing functions. + + Victor: I removed some of your functions. They can be very easy + implemented with hb_gt_GetChar()/hb_gt_PutChar() but I do not want to + make them part of documented external API because some GT drivers may + want to use absolutely differ color definitions and they will stop to + work so I do not want to make this functions documented external API. + + Ryszard: Setting alternative debug keys does not longer work. + I like such possibilities but it should be implemented in differ + way to f.e. using HB_GTINFO interface to allow low level GT driver + extensions, f.e. in *nixes using CTRL+[A-Z] and SIGINT, SIGQUIT, + SIGTSTP signals for real asynchronous setting of debug/cancel flag + without keyboard polling from main HVM loop. I would like to discus + about such more general solution. + + *** Please updated non GNU make files *** + +2006-02-03 15:56 UTC+0100 Antonio Linares + * makefile.nt + * makefile64.nt + + added modules strpeek and dynlibhb + +2006-02-03 15:30 UTC+0100 Antonio Linares (alinares@fivetechsoft.com) + * source/rtl/filesys.c + * Harbour 64 bits required fix + +2006-01-09 14:50 UTC+0100 Ryszard Glab + * include/hbexprb.c + * source/compiler/exproptb.c + * source/macro/macrob.c + * fixed to release the memory if macro compiled code contains + a variable or a function reference + + * source/rtl/filesys.c + * added missing '(' to copile correctly on UNIX'es + + +2005-12-28 13:05 UTC+0100 Antonio Linares (alinares@fivetechsoft.com) + * vm/maindll.c + + Added new functions HBDLLENTRY1() and HBDLLENTRY2() + + These function allow to call a Harbour (self contained) DLL and provide it + one or two Harbour items as parameters. A HBDLLENTRYN() that allows optionally + N parameters would be valuable too. + +2005-12-02 17:12 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * include/hbmath.h + ! Fixed a few declarations to be in sync with the + implementation. (Thanks Chen) + +2005-11-27 11:20 UTC+0200 Chen Kedem + * doc/en/math.txt + * Rename HB_MATHERRMODE() --> HB_MATHERMODE(), + HB_MATHERRORBLOCK() --> HB_MATHERBLOCK(), + math.ch --> hbmath.ch + * Some formating to 76 characters per line + +2005-11-24 23:24 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * include/hbpcode.h + + Comment added about adding new pcodes at the end of + the list for compatibility. + + * source/rtl/filesys.c + + Added hb_fsSetDevMode() Unix branch added (thx Przemek) + + * tests/mathtest.prg + * source/rtl/math.c + ! Fixed prev commit to comply with 10char function name + rule: + HB_MATHERRMODE() -> HB_MATHERMODE() + HB_MATHERRORBLOCK() -> HB_MATHERBLOCK() + + * source/rtl/seconds.c + ! hb_secondsCPU() move inside FlagShip guard instead + of HB_EXTENSION. + * hb_secondsCPU() made static (Harbour level function + helper only with non-std name). + + * source/vm/dynlibhb.c + * include/hbextern.ch + * LIBLOAD(), LIBFREE() moved (back) to Harbour namespace: + HB_LIBLOAD(), HB_LIBFREE() + + Added these functions to hbextern.ch + + * source/rtl/symbol.prg + * source/vm/dynsym.c + * include/hbextern.ch + * Internal function names renamed to comply and to + not collide with existing ones (mistake in prev + commit). + + + tests/symbolt.prg + ; Missed from prev commit. + +2005-11-22 10:31 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * source/rtl/symbol.prg + * source/vm/dynsym.c + * include/hbextern.ch + ! Moved and renamed two functions from BEGINDUMP to their + proper place. + GETSYMBOLPOINTER() -> __DYNSGETPOINTER() + GETSYMBOLNAME() -> __DYNSGETNAME() + + Added the two functions to hbextern.ch + + TOFIX added to symbol.prg to remove the remaining one C + function inside BEGINDUMP. (Antonio, can you take a look?) + +2005-11-22 10:08 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * doc/en/hb_apifs.txt + ! Fixed doc for hb_fsSetDevMode() + + * source/rtl/filesys.c + + Partially undone prev commit, so that now it gives + unreferenced var warnings for the not-implemented + platform branch. + + * tests/bldtest/bldtest.c + + Added missing CVS ID. + + * samples/guestbk/Makefile + * samples/guestbk/bld_b32.bat + * samples/hscript/Makefile + * samples/hscript/bld_b32.bat + * samples/misc/Makefile + * samples/pe/Makefile + * tests/Makefile + * utils/hbdoc/Makefile + * utils/hbextern/Makefile + * utils/hbmake/Makefile + * utils/hbrun/Makefile + * utils/hbtest/Makefile + + Added missing dbf*, hbsix libs. + Could not test GCC because MingW build is broken. + +2005-11-22 02:22 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) + * makefile.bc + * updated to compile source/rtl/strpeek.c + +2005-11-22 01:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbsetup.ch + * enable HB_COMPAT_FLAGSHIP by default + I hope it will not be a problem - if it does then I can disable it + but in *nixes for a long time FlagShip was the only one Clipper + alternative and some of its functions are quite often used in + Clipper/FoxPro programs ported to *nixes so I'd want to keep it + enabled at least when HB_OS_LINUX/HB_OS_UNIX is defined. + + * harbour/include/hbvm.h + + added missing extern in hb_vmAtInit() and hb_vmAtExit() declarations + + * harbour/include/hbvmpub.h + * formatting + + * harbour/source/rdd/dbcmd.c + ! fixed the problem with fieldput(,nil) at phantom recrod reported + by Victor + * do not use C level HB_ITEM + + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + ! fixed possible GPF when "/an/existing/path/" was used as file name. + No in DOS in such case it will casue RT error that file: + /an/existing/path/. + cannot be created (like in Clipper) but in other systems (f.e. Linux) + which allow to use such file names it will work without any problems. + + * harbour/source/rdd/dbffpt/dbffpt1.c + * do not use C level HB_ITEM + + * harbour/source/rtl/Makefile + + harbour/source/rtl/strpeek.c + + added STRPEEK and STRPOKE FS functions covered by HB_COMPAT_FLAGSHIP + macro + + * harbour/source/rtl/philes.c + ! fixed GPF when unshareing string item buffer with embedded 0 by using + hb_itemUnShare() + + * harbour/include/hbapiitm.h + * harbour/source/vm/itemapi.c + + added hb_itemUnShare() - /* un-share given string item */ + and hb_itemClone() - /* clone the given item */ + +2005-11-21 18:03 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + - include/math.ch + + include/hbmath.ch + * include/hbmath.h + * tests/mathtest.prg + ! math.ch -> hbmath.ch (rename) + +2005-11-21 17:44 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + tests/simplet.prg + * src/rtl/symbol.prg + * Embedded example code moved to the test dir. + + * src/rtl/math.c + * include/hbextern.ch + * tests/mathtest.prg + * doc/en/math.txt + ! HB_ prefix added for non-Clipper functions. + MATHERRMODE() -> HB_MATHERRMODE() + MATHERRORBLOCK() -> HB_MATHERRORBLOCK() + + Above two functions added to hbextern.ch + * HB_MATHERRMODE() input validation logic moved to the lower + level function. This is a step to make this a simple Set() + + * include/math.ch + + HB_ prefix added. + +2005-11-21 18:29 UTC+0200 Chen Kedem + * source/rtl/math.c + * Standardized public function names (to make HbExtern happy): + HB_FUNC (MATHERRMODE) --> HB_FUNC( MATHERRMODE ) + HB_FUNC (MATHERRORBLOCK) --> HB_FUNC( MATHERRORBLOCK ) + HB_FUNC (LOG) --> HB_FUNC( LOG ) + + * utils/hbextern/hbextern.prg + * Heavily modified to produce more accurate output + +2005-11-14 16:42 UTC+0100 Antonio Linares + * harbour/contrib/rdd_ads/makefile.vc + - removed module ads0 + +2005-11-19 00:30 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * include/hbapifs.c + * src/rtl/filesys.c + ! hb_fsSetDevMode() fixed back to return a BOOL value + to be compatible with the CA-Cl*pper undocumented + _tdevraw() function. (hb_fsSetDevMove() is mapped + to _tdevraw() in hbundoc.api, it's the documented + version of the same functionality) + Also fixed warning and error for one of the dummy + platform branches. + Since this came from xHarbour it pbly needs to be + fixed there too. + + * tests/Makefile + + symbolt.prg added + +2005-11-16 13:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/bin/pack_src.sh + * updated for nulsys.prg -> nulsys.c modification + +2005-11-16 13:14 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbvmpub.h + * changed definition of HB_SYMB structure. + HB_SYMBOLSCOPE cScope + replaced by: + union + { + HB_SYMBOLSCOPE value; /* the scope of the symbol */ + void * pointer; /* filler to force alignment */ + } scope; + This modification should only force the same alignment independently + on used compiler alignment switches or executed #pragma pack* + It's important to keep this structure with fixed size because it's + used in .c files generated from .prg code. + The code with #pragma pack* removed - it should not be longer + necessary but please make a real tests with different compiler + alignment switches + + * harbour/contrib/btree/hb_btree.c + * harbour/contrib/rdd_ads/ads1.c + * harbour/contrib/runjava/runjava.c + * harbour/source/compiler/genc.c + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/delim1.c + * harbour/source/rdd/sdf1.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbfdbt/dbfdbt1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/vm/dynsym.c + * harbour/source/vm/hvm.c + * harbour/source/vm/initsymb.c + * harbour/source/vm/runner.c + * updated for modified HB_SYMB structure. + +2005-11-15 05:10 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + * nulsys generation updated. + + * source/compiler/gencobj.c + ! Fixed warning. + + * source/rdd/rddord.prg + ! Fixed to include hbsetup.ch for HB_COMPAT_* guard + + * source/vm/hvm.c + ! Fixed warning. + + * make_b32.bat + - Removed "set BISON_SIMPLE" (was remmed) + +2005-11-14 20:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/common/expropt2.c + * casting + + * harbour/include/hbdate.h + + added hb_dateJulianDOW() - retrieve day of week from Julian's date + + * harbour/source/rtl/dates.c + * harbour/source/common/hbdate.c + * moved hb_dateDOW(), hb_dateDecStr() and hb_dateEncStr() to + hbdate.c - Ryszard I'd prefer to keep this function together + It will be much easier to update them. + + added HB_STR_DATE_BASE for conversion to string - Clipper + compatibility though we are not 100% Clipper compatible in STOD() + because we will have to reduce functionality (supported date + range) to reach it. In Clipper STOD(DTOS()) is not revertible. + I decided to make it revertible in [x]Harbour for the whole supported + in string conversion range: 0000/01/01 : 9999/01/01 + % optimized hb_dateEncode() + * some minor fixes for Clipper compatibility + + * harbour/source/rtl/dateshb.c + * use faster and Clipper compatible hb_dateJulianDOW() instead of + hb_dateDOW() + + * harbour/source/rdd/nulsys/Makefile + - harbour/source/rdd/nulsys/nulsys.prg + + harbour/source/rdd/nulsys/nulsys.c + * replaced .prg code with #pragma begindump/enddump by native C code + rtl/symbol.prg have to be updated yet. + + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * synced with xHarbour + +2005-11-14 20:50 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * hrbdll.vc + * makefile.nt + * makefile.vc + * makefile64.nt + * Change -o linker option to /OUT: to avoid warning with + MS Visual Studio 2005 compiler tools. + + Added -D_CRT_SECURE_NO_DEPRECATE to suppress the many + new MS warnings about unsafe function usage. + ; NOTE: MSVC 14.0 fails to compile macroy.c + ; NOTE: Still tons of warnings, but other than these it + compiles fine. + + * source/codepage/cdpsl437.c + ! Fixed wrong escape char (\ -> \\). + + * include/hbsetup.ch + * source/common/hbverdsp.c + + Added CLIP compatibility switch. + + * include/hbextern.ch + + Updated (somewhat). + + * source/rtl/strmatch.c + * source/rdd/rddord.prg + ! WILDMATCH() renamed to HB_WILDMATCH() + + * source/rdd/rddord.prg + ! ORDWILDSEEK() guarded with HB_COMPAT_XPP + + * source/rtl/seconds.c + ! SECONDSCPU guarded with HB_COMPAT_FLAGSHIP + +2005-11-14 9:01 UTC-0800 Luis Krause Mantilla + * hrbdll.bc + - removed references to delim0.prg/c + +2005-11-14 14:40 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) + * harbour/bin/bld.bat + + added references to hbsix.lib + - removed references to dbfdbt.lib + +2005-11-14 11:40 UTC+0100 Ryszard Glab + * source/compiler/harbour.y + * fixed 'type clash' warning in some bison version + +2005-11-14 11:10 UTC+0100 Ryszard Glab + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + * updated to compile source/common/hbdate.c + +2005-11-14 11:00 UTC+0100 Ryszard Glab + * include/hbcomp.h + * include/hberrors.h + * include/hbexpra.c + * include/hbexprb.c + * include/hbexprop.h + * include/hbhash.h + * include/hbmacro.h + * include/hbpcode.h + * source/common/Makefile + * source/common/expropt1.c + * source/common/expropt2.c + * source/common/hbhash.c + * source/compiler/expropta.c + * source/compiler/exproptb.c + * source/compiler/genc.c + * source/compiler/harbour.c + * source/compiler/harbour.l + * source/compiler/harbour.y + * source/compiler/hbfix.c + * source/compiler/hbgenerr.c + * source/compiler/hbident.c + * source/compiler/hbpcode.c + * source/macro/macro.l + * source/macro/macro.y + * source/macro/macroa.c + * source/macro/macrob.c + * source/rtl/dates.c + * source/vm/hvm.c + * source/vm/macro.c + + source/common/hbdate.c + + tests/ddate.prg + + tests/switch.prg + +added support for DATE type constants in the following format: + 0dYYYYMMDD + for example (see tests/ddate.prg for more): + IF( dDate > 0d20051112 ) + + +added support for SWITCH command (see tests/switch.prg) + SWITCH + CASE + ... + [EXIT] + CASE + ... + [EXIT] + [OTHERWISE] + ... + END + + Notice: + - Integer and string expressions can be mixed in a single + SWITCH command with no runtime errors; + - CASE expression have to be resolved at compile time and + the result has to be either an integer or string constant + - if there is no EXIT statement then next CASE is executed + (or OTHERWISE for the last CASE) + For example: + CASE 1+32+2*4 + CASE CHR(64) + CASE ASC('A') + CASE "A"+CHR(13) + + Notice: + The above changes apply only to FLEX version! + + +2005-11-13 21:21 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) + * harbour/contrib/ole/bldtest.bat + * harbour/contrib/ole/hbtest.prg + ! updated files + +2005-11-13 20:50 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) + * harbour/contrib/rdd_ads/makefile.bc + * harbour/contrib/rdd_ads/make_b32.bat + ! updated - synced with xHarbour + +2005-11-13 12:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/ole/ole2.c + * harbour/contrib/ole/oleauto.prg + ! fixed casting + + * harbour/contrib/rdd_ads/Makefile + * harbour/contrib/rdd_ads/ace.h + * harbour/contrib/rdd_ads/ads.ch + - harbour/contrib/rdd_ads/ads0.prg + * harbour/contrib/rdd_ads/ads1.c + * harbour/contrib/rdd_ads/adsfunc.c + * harbour/contrib/rdd_ads/adsmgmnt.c + * harbour/contrib/rdd_ads/rddads.h + * harbour/include/hbapirdd.h + * harbour/include/hbrddcdx.h + * harbour/include/hbrdddbf.h + * harbour/include/hbrdddbt.h + * harbour/include/hbrddfpt.h + * harbour/include/hbrddntx.h + * harbour/source/rdd/dbcmd.c + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/dbsort.prg + * harbour/source/rdd/dbstrux.prg + * harbour/source/rdd/dbtotal.prg + * harbour/source/rdd/hbdbsort.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * synced with xHarbour + + * harbour/include/hbcomp.h + * harbour/source/compiler/harbour.c + * harbour/source/compiler/hbgenerr.c + * harbour/source/compiler/hbpcode.c + * emit warning and error messages to stderr instead of stdout + Now it's enabled only for *nix platforms. + + * harbour/source/vm/extend.c + * allow hb_param() to return parameters accessed by HB_IT_BYREF + +2005-11-08 01:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/vm/garbage.c + - removed unnecessary memset() + + * harbour/source/vm/hvm.c + % use startup initialized symbols: hb_symEnumIndex, hb_symEnumBase, + hb_symEnumValue instead of strcmp( pSym->szName, ... ) in hb_vmSend() + % remove unnecessary temporary item in hb_vmEnumStart() and use + hb_itemMove() instead of hb_itemCopy()+hb_itemClear() + % changed main VM loop to eliminate one comparision done on each + loop. Now HB_P_ENDBLOCK and HB_P_ENDPROC pcodes set HB_ENDPROC_REQUESTED + and the main loop can be exited only from one place. It gives some + small but noticeable speed improvement. + Ryszard please check this modification. AFAIK it should not cause + any bad side effect and IMHO the code is cleaner now. + + * harbour/source/vm/itemapi.c + % removed two unnecessary hb_itemClear() before hb_itemRelease() + +2005-11-07 14:35 UTC+0100 Ryszard Glab + * include/hbapi.h + * include/hbapiitm.h + * include/hbcomp.h + * include/hberrors.h + * include/hbexpra.c + * include/hbpcode.h + * include/hbsetup.h + * source/common/expropt1.c + * source/compiler/expropta.c + * source/compiler/genc.c + * source/compiler/gencli.c + * source/compiler/harbour.c + * source/compiler/harbour.l + * source/compiler/harbour.y + * source/compiler/hbfix.c + * source/compiler/hbgenerr.c + * source/compiler/hbpcode.c + * source/macro/macroa.c + * source/vm/hvm.c + * source/vm/itemapi.c + + tests/foreach.prg + + added support for FOR EACH loop + FOR EACH var1 [,var255] IN expr1 [,expr255] [DESCEND] + NEXT + + Note: + -expr can be a string or an array + if it is a string then assigments to the control + variable does not change the string + -after the loop the controlling variable(s) store the + value which they had before entering the loop + -the controlling variable supports the following properties + :__enumindex - the loop counter for variable + :__enumbase - the value that is being traversed + :__enumvalue - the value of variable + -see tests/foreach.prg for examples + + + added warnings in cases of duplicated loop variables + eg. FOR i:=1 TO 5 + FOR i:=i TO i+5 + + -removed strong typing in the compiler (xHarbour too) + (reactivate it by compiling with -DHB_COMP_STRONG_TYPES) + +NOTE: + The new pcodes were added - rebuild everything + + +2005-11-04 22:19 UTC+0100 Antonio Linares + * harbour/source/vm/estack.c + * hb_UnhandledExceptionFilter() modified to return EXCEPTION_CONTINUE_SEARCH + + NOTICE: When returning EXCEPTION_CONTINUE_SEARCH then both Microsoft and Borland + behave the same way, and the Windows GPF dialogbox is finally shown, which + it is quite usefull to locate the GPF address (on a MAP file). + +2005-11-04 12:41 UTC+0100 Antonio Linares + * harbour/source/vm/mainwin.c + * SetUnhandledExceptionFilter() is called if HB_INCLUDE_WINEXCHANDLER define is used + + * harbour/source/vm/estack.c + * UnhandledExceptionFilter renamed as hb_UnhandledExceptionFilter, and + WINBASEAPI removed. + +2005-11-03 10:42 UTC+0100 Antonio Linares + + added Microsoft initialization code + harbour/source/lang/msgcs852.c + harbour/source/lang/msgcsiso.c + harbour/source/lang/msgcskam.c + harbour/source/lang/msgcswin.c + harbour/source/lang/msgde.c + harbour/source/lang/msgdewin.c + harbour/source/lang/msgel.c + harbour/source/lang/msgelwin.c + harbour/source/lang/msgen.c + harbour/source/lang/msgeo.c + harbour/source/lang/msges.c + harbour/source/lang/msgeswin.c + harbour/source/lang/msgeu.c + harbour/source/lang/msgfr.c + harbour/source/lang/msggl.c + harbour/source/lang/msghr852.c + harbour/source/lang/msghriso.c + harbour/source/lang/msgid.c + harbour/source/lang/msgis850.c + harbour/source/lang/msgit.c + harbour/source/lang/msgko.c + harbour/source/lang/msgpt.c + harbour/source/lang/msgro.c + harbour/source/lang/msgru866.c + harbour/source/lang/msgrukoi.c + harbour/source/lang/msgruwin.c + harbour/source/lang/msgsl437.c + harbour/source/lang/msgsl852.c + harbour/source/lang/msgsliso.c + harbour/source/lang/msgslwin.c + harbour/source/lang/msgsr852.c + harbour/source/lang/msgsriso.c + harbour/source/lang/msgsrwin.c + harbour/source/lang/msgzhb5.c + harbour/source/lang/msgzhgb.c + +2005-11-02 07:32 UTC+0100 Antonio Linares + * makefile.nt + * makefile64.nt + + added references to new files. + +2005-11-02 01:56 UTC+0100 Jacek Kubica (kubica/at/wssk.wroc.pl) + * harbour/makefile.bc + + added references to harbour/source/common/hbarch.c + + added references to harbour/source/rtl/fserror.c + +2005-11-01 23:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/make_gnu.sh + + harbour/make_xmingw.sh + * harbour/bin/hb-mkslib.sh + * harbour/bin/postinst.sh + * harbour/config/w32/mingw32.cf + * added support for cross compilation (Windows binaries at Linux) with + MinGW - borrowed from xHarbour Phil Krylov solution + + * harbour/contrib/btree/hb_btree.c + * casting + + * harbour/contrib/libct/files.c + ! fixed iAttr initialization in SETFATTR() + + * harbour/contrib/ole/ole2.c + ! fixed names of included files + + * harbour/contrib/rdd_ads/ace.h + * cover #pragma warning( error : 4706 ) by !defined( __GNUC__ ) + + * harbour/include/hbapi.h + * harbour/include/hbdefs.h + + harbour/source/common/hbarch.c + * harbour/source/common/Makefile + * added functions for machine independent double and long long conversions + (my code borrowed from xHarbour) + + * harbour/include/hbapifs.h + * synced file IO with xHarbour - it fixes some problems, adds some + missing functionality and long (64bit) file support for Windows. + For Linux I added it some time ago. + + * harbour/include/hbcomp.h + * changed 'char cScope' to 'HB_SYMBOLSCOPE cScope' + + * harbour/source/common/hbfsapi.c + ! fixed some possible buffer overflow + + * harbour/source/common/hbstr.c + * synced with xHarbour + + * harbour/source/common/hbver.c + + added hb_iswinnt() (borrowed from xHarbour) + + * harbour/source/compiler/cmdcheck.c + + added -undef: compiler switch (borrowed from xHarbour) + + * harbour/source/compiler/gencobj.c + * cleanup + + * harbour/source/pp/ppcore.c + ! fixed path delimiters in included file names + + * harbour/source/rtl/Makefile + + harbour/source/rtl/fserror.c + + added C -> OS file error trnalsations - not perfect but better then + the used hacks (borrowed from xHarbour) + + * harbour/source/rtl/file.c + * use hb_fileNameConv() instead of hb_filecase() - hb_fileNameConv() + is the only one function to make file name conversions dependent on + some SETs. + + * harbour/source/rtl/filesys.c + * synced file IO with xHarbour - it fixes some problems, adds some + missing functionality and long (64bit) file support for Windows. + For Linux I added it some time ago. + + * harbour/source/rtl/fstemp.c + * synced with xHarbour + + * harbour/source/rtl/strings.c + * use ULONG instead of size_t in hb_strnicmp declaration - we have to + decide what we should use. Using size_t or its Harbour version f.e. + HB_SIZE_T seems to be reasonable but it has to be global - redefining + single functions does not make sense and will create troubles only. + +2005-10-31 14:38 UTC+0100 Antonio Linares + * makefile.nt + * makefile64.nt + - Some files removed cause recent changes: + harbour/source/rdd/dbf0.prg + harbour/source/rdd/delim0.prg + harbour/source/rdd/sdf0.prg + harbour/source/rdd/dbfcdx/dbfcdx0.prg + harbour/source/rdd/dbfcdx/sixcdx0.prg + harbour/source/rdd/dbfdbt/dbfdbt0.prg + +2005-10-30 14:50 UTC+0200 Chen Kedem + * doc/dirstruc.txt + + Add oneliner description for: source/rdd/hbsix, source/rdd/hsx + + * doc/en/lang.txt + + Added the following to HB_LANGSELECT() list of supported ID's: + BG866, BGISO, BGWIN, HUISO + + Added the following to HB_SETCODEPAGE() list of supported ID's: + BG866, BGISO, BGWIN, ESMWIN, HUISO + * Change the following to HB_SETCODEPAGE() list of supported ID's: + PT --> PT850, RUWIN --> RU1251 + + * source/lang/msghe862.c + * source/lang/msghewin.c + * Update startup code to work with MSC + +2005-10-28 10:23 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + * include/hbapicdp.h + * source/codepage/Makefile + * source/codepage/cdphu852.c + * source/lang/Makefile + * source/lang/msg_tpl.c + * source/lang/msghu852.c + + source/codepage/cdpbg866.c + + source/codepage/cdpbgiso.c + + source/codepage/cdpbgwin.c + + source/codepage/uc8859_5.c + + source/lang/msgbg866.c + + source/lang/msgbgiso.c + + source/lang/msgbgwin.c + + Added BG language support. + * HU minor fix. + * Lang template updated. + +2005-10-24 15:09 UTC+0200 Jacek Kubica (kubica/at/wssk.wroc.pl) + * harbour/makefile.bc + - Remove references to: + harbour/source/rdd/dbf0.prg + harbour/source/rdd/delim0.prg + harbour/source/rdd/sdf0.prg + harbour/source/rdd/dbfcdx/dbfcdx0.prg + harbour/source/rdd/dbfcdx/sixcdx0.prg + harbour/source/rdd/dbfdbt/dbfdbt0.prg + +2005-10-24 14:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/makefile.bc + * BCC make file updated by Jacek Kubica + +2005-10-24 13:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbapi.h + * harbour/include/hbapiitm.h + * harbour/include/hbapirdd.h + * harbour/include/hbdefs.h + * harbour/include/hbtypes.h + * harbour/source/rtl/empty.c + * harbour/source/vm/arrays.c + * harbour/source/vm/extend.c + * harbour/source/vm/hvm.c + * harbour/source/vm/itemapi.c + * harbour/source/vm/maindllp.c + + added HB_TYPE to as HB_ITEM type marker. + * set HB_TYPE as UINT32 + * updated to the above modifications + * cleaned some ~HB_IT_BYREF which has no effect in current VM + +2005-10-24 12:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbtypes.h + * harbour/source/vm/maindllp.c + ! fixed some declaration I missed in previous commit + +2005-10-24 12:08 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + * source/codepage/Makefile + * source/codepage/cdphu852.c + + source/codepage/cdphuiso.c + * source/codepage/cdphuwin.c + * source/lang/Makefile + * source/lang/msghu852.c + * source/lang/msghucwi.c + + source/lang/msghuiso.c + * source/lang/msghuwin.c + * HU lang stuff updated. ISO cp added (same as Win cp). Minor fixes + (not related to functionality) added. + +2005-10-24 02:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/dot/pp.prg + * harbour/contrib/dot/pp_harb.ch + * harbour/include/hbapi.h + * harbour/include/hbapirdd.h + * harbour/include/hbdefs.h + * harbour/include/hbextern.ch + * harbour/include/hbinit.h + * harbour/include/hbstack.h + * harbour/include/hbsxfunc.h + * harbour/include/hbvm.h + + harbour/include/hbvmopt.h + * harbour/include/hbvmpub.h + * harbour/source/codepage/cdp_tpl.c + * harbour/source/codepage/cdppl852.c + * harbour/source/codepage/cdppliso.c + * harbour/source/codepage/cdpplmaz.c + * harbour/source/codepage/cdpplwin.c + * harbour/source/compiler/genc.c + * harbour/source/compiler/harbour.c + * harbour/source/lang/msgca.c + * harbour/source/lang/msgpl852.c + * harbour/source/lang/msgpliso.c + * harbour/source/lang/msgplmaz.c + * harbour/source/lang/msgplwin.c + * harbour/source/rdd/Makefile + * harbour/source/rdd/dbcmd.c + - harbour/source/rdd/dbf0.prg + * harbour/source/rdd/dbf1.c + - harbour/source/rdd/delim0.prg + * harbour/source/rdd/delim1.c + * harbour/source/rdd/rddsys.prg + - harbour/source/rdd/sdf0.prg + * harbour/source/rdd/sdf1.c + * harbour/source/rdd/dbfcdx/Makefile + - harbour/source/rdd/dbfcdx/dbfcdx0.prg + * harbour/source/rdd/dbfcdx/dbfcdx1.c + - harbour/source/rdd/dbfcdx/sixcdx0.prg + * harbour/source/rdd/dbfdbt/Makefile + - harbour/source/rdd/dbfdbt/dbfdbt0.prg + * harbour/source/rdd/dbfdbt/dbfdbt1.c + * harbour/source/rdd/dbffpt/Makefile + - harbour/source/rdd/dbffpt/dbffpt0.prg + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/Makefile + * harbour/source/rdd/dbfntx/dbfntx0.prg + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/rdd/hbsix/Makefile + * harbour/source/rdd/hbsix/sxcompr.c + * harbour/source/rdd/hbsix/sxcrypt.c + * harbour/source/rdd/hbsix/sxdate.c + * harbour/source/rdd/hsx/hsx.c + * harbour/source/rdd/nulsys/nulsys.prg + * harbour/source/rtl/browdbx.prg + * harbour/source/rtl/cdpapi.c + * harbour/source/vm/arrays.c + * harbour/source/vm/arrayshb.c + * harbour/source/vm/asort.c + * harbour/source/vm/break.c + * harbour/source/vm/classes.c + * harbour/source/vm/cmdarg.c + * harbour/source/vm/codebloc.c + * harbour/source/vm/debug.c + * harbour/source/vm/dynlibhb.c + * harbour/source/vm/dynsym.c + * harbour/source/vm/estack.c + * harbour/source/vm/eval.c + * harbour/source/vm/evalhb.c + * harbour/source/vm/extend.c + * harbour/source/vm/fm.c + * harbour/source/vm/garbage.c + * harbour/source/vm/hvm.c + * harbour/source/vm/initsymb.c + * harbour/source/vm/itemapi.c + * harbour/source/vm/macro.c + * harbour/source/vm/maindllp.c + * harbour/source/vm/memvars.c + * harbour/source/vm/memvclip.c + * harbour/source/vm/pcount.c + * harbour/source/vm/proc.c + * harbour/source/vm/pvalue.c + * harbour/source/vm/runner.c + * remove default API and stack macros. Now API/stack macros can be + enabled by including hb_vmopt.h file. + This file should be included _ONLY_ by core code because binary + object/libraries generated after can work only with _EXACTLY_ the + same HVM compiled the same C alignment switches + * cleaned some HB_EXTERN_C declaration - Anotonio you should be able + to build FWH now + * cleaned startup initialization code - + please update lang and codepage files - I only updated + source/codepage/cdppl*.c and source/lang/msgpl*.c files + Or other files should be updated or they will not work MSC + * synced with recent xHarbour modification in RDD init code + +2005-10-23 09:05 UTC+0100 Antonio Linares + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/hbsix/sxcompr.c + * harbour/source/rdd/hbsix/sxcrypt.c + * harbour/source/rdd/hsx/hsx.c + + Minor fix to support define HB_NO_DEFAULT_API_MACROS (if used) + required by Microsoft compiler + + IMPORTANT: Now Harbour properly builds using Microsoft compiler and + define HB_NO_DEFAULT_API_MACROS, but applications fail to start, showing + this error: + Unrecoverable error 9004: RDD invalid or failed to load + Called from DBFFPTINIT(62) + + Using Borland and the same define, all compiles and works ok. + + We need to discover why such error raises using Microsoft compiler and that + define. + +2005-10-21 08:40 UTC+0100 Antonio Linares + * makefile.nt + + minor fix. + +2005-10-12 02:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/config/global.cf + + added HB_DB_DRVEXT envvar support for additional RDDs + + * harbour/config/linux/gcc.cf + + harbour/config/linux/gpp.cf + + added GNU C++ support + + * harbour/config/linux/owatcom.cf + * harbour/contrib/btree/hb_btree.c + * harbour/contrib/libct/ct.h + * harbour/contrib/libct/ctc.c + * harbour/contrib/odbc/odbc.c + * harbour/contrib/rdd_ads/adsfunc.c + * harbour/include/hbapi.h + * harbour/include/hbapierr.h + * harbour/include/hbapigt.h + * harbour/include/hbapilng.h + * harbour/source/compiler/harbour.c + * harbour/source/rtl/console.c + * harbour/source/rtl/datec.c + * harbour/source/rtl/diskspac.c + * harbour/source/rtl/errorapi.c + * harbour/source/rtl/errorint.c + * harbour/source/rtl/filesys.c + * harbour/source/rtl/fssize.c + * harbour/source/rtl/fstemp.c + * harbour/source/rtl/gtapi.c + * harbour/source/rtl/isprint.c + * harbour/source/rtl/natmsg.c + * harbour/source/rtl/philes.c + * harbour/source/rtl/setcolor.c + * harbour/source/rtl/spfiles.c + * harbour/source/rtl/gtcrs/gtcrs.c + * harbour/source/rtl/gtsln/gtsln.c + * harbour/source/rtl/gtsln/kbsln.c + * harbour/source/vm/itemapi.c + * harbour/source/vm/memvars.c + * harbour/source/vm/runner.c + * fixed for popper compilation with GNU C++ and OpenWatcom on Linux + +2005-10-05 15:05 UTC+0100 Ryszard Glab + * source/common/expropt2.c + * fixed bug in ASC() optimization (when character code > 127) + + +2005-10-05 03:08 UTC-0500 David Arturo Macias Corona + * harbour/include/hbextern.ch + ! added missing declarations: + DBRELATION, DBRSELECT, MENUMODAL, _PUSHBUTT_, _LISTBOX_ + * harbour/contrib/mysql/tmysql.prg + ! added conversion from tiny int MySQL type into numeric DBF. (an error before). + Supplied by Mitja Podgornik + + +2005-09-28 13:05 UTC+0100 Ryszard Glab + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + - removed references to DBFDBT library + + * source/debug/dbgtmenu.prg + * source/debug/dbgtmitm.prg + * source/debug/dbgtwin.prg + * source/debug/debugger.prg + * source/rtl/alert.prg + * fixed displaying of boxes under the xterm + (use @ ... TO ... instead of @ ... BOX) + + * source/rtl/gtcrs/gtcrs.c + * fixed restoring of alternate characters flag + + +2005-09-27 15:10 UTC-0800 Luis Krause Mantilla + * harbour/contrib/rdd_ads/adsfunc.c + ! added missing functions hb_oemansi & hb_ansioem required with + the recent sycn by Ryzard + * harbour/contrib/rdd_ads/ads.ch + ! updated comment on how to use ADS_REQUIRED_VERSION manifest constant + +2005-09-26 12:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * xharbour/source/rdd/dbcmd.c + ! fixed bug I introduced in RDDLIST() + +2005-09-25 21:40 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/harbour.spec + * harbour/make_tgz.sh + * harbour/bin/hb-func.sh + * harbour/bin/pack_src.sh + * harbour/config/global.cf + * harbour/include/hbapiitm.h + * harbour/include/hbdate.h + * harbour/include/hbextern.ch + * harbour/source/rdd/dbcmd.c + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/workarea.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/rtl/dates.c + * harbour/source/vm/itemapi.c + * updated for proper RDD synchronization with xHarbour + + * harbour/source/vm/hvm.c + ! fixed bug in divide by 0 substitution + + * harbour/contrib/rdd_ads/ads0.prg + * harbour/contrib/rdd_ads/ads1.c + * harbour/contrib/rdd_ads/adsfunc.c + * harbour/contrib/rdd_ads/rddads.h + * synced base of ADS RDD with xHarbour - old code cannot be compiled + without it - external ADS*() functions not synced - I do not use them + and I do not want to break sth - Harbour ADS developers should check it + +2005-09-23 15:05 UTC+0100 Ryszard Glab + * include/hbextern.ch + * removed reference to SDFC and DELIMC + * source/rdd/dbcmd.c + * removed definition of DBSKIPPER function (it is defined + already in rtl/browdbx.prg) + + +2005-09-23 13:45 UTC+0100 Ryszard Glab + * makefile.bc + * makefile.nt + * makefile.vc + * makefile64.nt + * updated build files for non-GNU make engines + + +2005-09-23 15:45 UTC+0100 Ryszard Glab + * config/global.cf + * include/dbinfo.ch + * include/hbapi.h + * include/hbapierr.h + * include/hbapifs.h + * include/hbapirdd.h + * include/hbdbf.h + * include/hbdbferr.h + * include/hbdefs.h + * include/hbrddcdx.h + * include/hbrdddbf.h + * include/hbrdddbt.h + * include/hbrdddel.h + * include/hbrddfpt.h + * include/hbrddntx.h + * include/hbrddsdf.h + * include/hbrddwrk.h + * include/hbvm.h + * source/common/hbstr.c + * source/rdd/Makefile + * source/rdd/dbcmd.c + * source/rdd/dbf1.c + * source/rdd/dbtotal.prg + * source/rdd/delim0.prg + * source/rdd/delim1.c + * source/rdd/rddsys.prg + * source/rdd/sdf0.prg + * source/rdd/sdf1.c + * source/rdd/workarea.c + * source/rdd/dbfcdx/Makefile + * source/rdd/dbfcdx/dbfcdx0.prg + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbfdbt/Makefile + * source/rdd/dbfdbt/dbfdbt1.c + * source/rdd/dbffpt/Makefile + * source/rdd/dbffpt/dbffpt0.prg + * source/rdd/dbffpt/dbffpt1.c + * source/rdd/dbfntx/Makefile + * source/rdd/dbfntx/dbfntx0.prg + * source/rdd/dbfntx/dbfntx1.c + * source/rdd/nulsys/nulsys.prg + * source/rtl/errorapi.c + * source/rtl/filesys.c + * source/vm/dynsym.c + * source/vm/extend.c + * source/vm/itemapi.c + * source/vm/hvm.c + + include/hbsxfunc.h + + source/rdd/dbfcdx/sixcdx0.prg + + source/rdd/dbfcdx/sixcdx1.c + + source/rdd/hbsix/Makefile + + source/rdd/hbsix/sxcompr.c + + source/rdd/hbsix/sxcrypt.c + + source/rdd/hbsix/sxdate.c + + source/rdd/hsx/Makefile + + source/rdd/hsx/cftsfunc.c + + source/rdd/hsx/hsx.c + * changes to synhronize RDD code with xHarbour (state of 23.09.2005) + Many, many thanks to Przemek Czerpak for his work. + + +2005-09-20 10:16 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/rtl/tget.prg + ! One previous fix reverted because it broke numeric data entry. + Solved from caller side for the meantime. TOFIX added. + +2005-08-23 22:01 UTC-0400 Alejandro de Garate + + + doc\linux1st.txt + Added Linux primer written by Scott Johnson + +2005-08-23 18:45 UTC-0400 Alejandro de Garate + + * source\rtl\scrollbr.prg + * Fixed length in Style string (more than 4 characters) + - Eliminated unused LOCAL vars in Hitest() + - Deleted unused method GetColor() + + Added METHOD SetStyle( cStyle ) to change SB characters at runtime + + Added METHOD SetColor( cColor ) to change SB colors at runtime + * fixed bugs, minor optimizations + +2005-08-23 18:45 UTC-0400 Alejandro de Garate + + + tests\sbartest.prg + Added sample of scrollbar class + +2005-06-14 21:11 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/rtl/disksphb.c + * hb_DiskSpace() changed to not give a runtime error in case + of any error, but set the FError() value instead. + + * config/bsd/global.cf + * config/darwin/global.cf + * config/dos/global.cf + * config/dos/owatcom.cf + * config/hpux/global.cf + * config/linux/global.cf + * config/linux/owatcom.cf + * config/os2/dir.cf + * config/os2/global.cf + * config/os2/install.cf + * config/sunos/global.cf + * config/w32/global.cf + ! Changed all line beginning spaces to Tabs. + +2005-06-11 13:01 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/rtl/idle.c + ! Fix to prev. commit. + +2005-06-09 18:09 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/rtl/tget.prg + ! :display fixed (again) to always call VarGet block + to be CA-Cl*pper compatible. + + * config/w32/global.cf + ! Fixed to properly create the obj directories when compiling + using GCC under XP. This broke in the near past. + + * source/pp/ppcore.c + ! Fixed two compiler warnings. + ; Please review one of them if you made the change, since + I'm not sure what the intention was, here's the code snippet: + + ... + lenreal = IsMacroVar( *ptri, com_or_tra ); /* THIS LINE IS NOW COMMENTED OUT */ + *ptri +=1; + lenreal = getExpReal( expreal+2, ptri, FALSE, maxlenreal, FALSE ); + ... + + * source/codepage/cdphu852.c + ! HU sorting order fixed to be more compatible with CA-Cl*pper. + (Still missing some non-852 chars though) + + * source/common/hbver.c + ! Fixed forming NT version number (5.01.2600 -> 5.1.2600) + + * source/compiler/hbusage.c + + Copyright year updated. + + * source/rtl/idle.c + * Cleaned up a platform dependent code part. + +2005-05-25 09:55 UTC+0300 Alexander Kresin + * include/hbver.h + * doc/whatsnew.txt + * harbour.spec + * Release info has been changed for release 45. + +2005-05-15 11:04 UTC+0300 Chen Kedem + * doc/dirstruc.txt + + Add oneliner description for: config/hpux + +2005-05-15 10:42 UTC+0300 Chen Kedem + * doc/whatsnew.txt + + Add information about the upcoming alpha build 45 written by + Alejandro de Garate + + Add historic information about the old OpenClipper + builds 6, 7, 8 and 9 I had found on Google + +2005-05-07 17:01 UTC+0100 Antonio Linares + * makefile64.nt + + bufferoverflowu.lib added to LDFLAGS as per new Microsoft C 64 + compiler (PSDK April 2005) requirement. + + * hbdate.h + * hbapifs.h + + HB_EXPORT added to those functions that already were using it, + as per new Microsoft C 64 compiler (PSDK April 2005) requirement. + +2005-04-29 16:00 UTC+0100 Antonio Linares + * makefile64.nt + * -D__64__ removed. No longer needed. + +2005-04-29 15:54 UTC+0100 Antonio Linares + * include/hbinit.h + * __64__ changed into Microsoft C 64 built-in _WIN64 + +2005-04-29 15:46 UTC+0100 Antonio Linares + * include/hbdefs.h + * fixed for Windows 64, using Microsoft C provided _WIN64 define + Changes provided by Przemek. Thanks! :-) + +2005-04-29 07:02 UTC+0100 Antonio Linares + * makefile64.nt + * __64__ define declared + * include/hbinit.h + * __64__ define use to detect building for 64 bits when using Microsoft C compiler + + Please notice that Microsoft C 64 compiler is a cross compiler that works as a 32 bits + application, so this is the only way found by now to detect we want to build for 64 bits. + + +2005-04-29 06:08 UTC+0100 Antonio Linares + + make_vc64.bat + + makefile64.nt + * make files for Microsoft C 64 bits + +2005-04-18 00:15 UTC+0100 Antonio Linares + * source/rtl/gtwin/gtwin.c + * 64 bits support - temporary minor workarounds + +2005-04-18 00:10 UTC+0100 Antonio Linares + * include/hbdefs.h + * fixed typo on used USHORT_MAX instead of USHRT_MAX + as per advise from Przemek. + +2005-04-18 22:52 UTC+0100 Antonio Linares + * include/hbstack.h + * two minor changes required for 64 bits support + as per advise from Przemek. It is a general solution for the fix + implemented yesterday. + +2005-04-17 ??:?? UTC+0100 Antonio Linares + * source/vm/hvm.c + * minor change required for 64 bits support. + +2005-03-18 11:45 UTC+0100 Ryszard Glab + + * config/dos/global.cf + *restored creation of subdirectiories under plain DOS + + * include/hbapi.h + * include/hbcomp.h + * include/hbdefs.h + * include/hbvm.h + * source/compiler/genc.c + * source/compiler/harbour.c + * source/compiler/hbpcode.c + * source/vm/dynsym.c + * source/vm/hvm.c + * source/vm/macro.c + *modified creation of symbols table + *symbol of function name never share a symbol of variable + *symbol for INIT/EXIT procedure has now '$' suffix - this means + that such procedures cannot be called from user code + (Clipper compatible) + See the following code: + PROCEDURE MAIN + aaa() + RETURN + INIT PROCEDURE aaa + ? "In INIT procedure", PROCNAME(0) + RETURN + STATIC PROCEDURE aaa + ? "In STATIC procedure", PROCNAME(0) + RETURN + It will print: + In INIT procedure aaa$ + In STATIC procedure aaa + + *fixed access to static functions in a macro compiler (symbols for + static functions never goes into dynamic symbols table) + + * source/pp/ppcore.c + *increased numer of nested optional clauses (max 5 currently - work + in progress) + +2005-02-16 13:52 UTC+0100 Antonio Linares + * source/vm/classes.c + hb_objGetpMethod() compiled as extern "C" for MSVC compatibility with xHarbour + +2005-02-01 21:05 UTC+0100 Tomaz Zupan + * harbour.spec + Returned optimization to O3. Problems with Mandrake/gcc + are fixed in Mdk 10.1 with gcc 3.4. + (see ChangeLog 2004-07-18 19:50 UTC+0200 Tomaz Zupan) + +2005-02-01 20:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/vm/memvars.c + * fixed public releasing - fix borrowed from xHarbour + Ryszard please check if it doesn't cause any bad side effects. + The following code demonstrate the problem. + + =========================================== + memvar x, y, z + proc main() + local l := { || x } + public x := "QWE" + private z := "asd" + Errorblock( { | oError | errHandler( oError ) } ) + ? eval( l ) + test() + ? x + ? z + ? eval( l ) + return + + proc test() + private y := "xyz" + release x, y, z + ? x + ? y + ? z + return + + func errHandler( oErr ) + local varName := oErr:operation() + public &varName := oErr:description() + ": " + varName + return .t. + =========================================== + +2005-01-31 20:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rdd/dbf1.c + * fixed possible GPF I introduced with last update. + +2005-01-30 22:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/rdd_ads/ace.h + * small modification for OpenWatcom on Linux + + * harbour/source/rdd/dbfntx/dbfntx1.c + * minor fix: use *_GOTO( pArea, 0 ) instead + of *_GOTO( pArea, pArea->ulRecCount+1000 ) + + use hb_fsSeekLarge() - for DBFs longer then 2GB + + * harbour/include/hbrddcdx.h + * harbour/source/rdd/dbfcdx/dbfcdx1.c + + use hb_fsSeekLarge() - for DBFs longer then 2GB + * my last xHarbour modifications: + improved indexing speed of DBFs with very big number of + records. In small DBFs less then 100'000 records the new + algorithm can even decrease the speed by ~0.5% due to static + costs but in bigger it becomes faster. For 1'000'000 records + DBFs is about 20% faster, for 10'000'000 records about twice + faster. With bigger DBFs more. Please test it. If you will + have any troubles (I hope not) then please comment out in + dbfcdx.c: + #define HB_CDX_NEW_SORT + I should done it before when I was rewriting the indexing but + sorry I was too lazy. Now I've found a while. Current cost of + key comparisons is always n*log2(n) and cannot be more improved. + Some small optimizations still can be done but the static cost + for small database will be bigger then ~0.5% as in this case + so I do not plan to do it in the nearest future. + + * harbour/include/dbinfo.ch + * harbour/source/rdd/dbf1.c + + use hb_fsSeekLarge() - for DBFs longer then 2GB + * synched with xHarbour (added DBRI_RAW*) + * do not call GOCOLD() inside CHILDSYNC() but do it in FORCEREL() + the modification based on CL5.3 NG. + Below is a note I lef in dbf1.c: + /* + * !!! The side effect of calling GOCOLD() inside CHILDSYNC() is + * evaluation of index expressions (index KEY and FOR condition) + * when the pArea is not the current one - it means that the + * used RDD has to set proper work area before eval, DBFCDX does + * but DBFNTX not yet - it should be changed. + * IMHO GOCOLD() could be safely removed from this place but I'm not + * sure it's Clipper compatible - I will have to check it, Druzus. + */ + /* + * I've checked in CL5.3 Technical Reference Guide that only + * FORCEREL() should ensure that the work area buffer is not hot + * and then call RELEVAL() - I hope it describes the CL5.3 DBF* RDDs + * behavior so I replicate it - the GOCOLD() is moved from CHILDSYNC() + * to FORCEREL(), Druzus. + */ + + * harbour/source/rdd/dbf0.prg + * harbour/source/rdd/delim0.prg + * harbour/source/rdd/rddsys.prg + * harbour/source/rdd/sdf0.prg + * harbour/source/rdd/dbfntx/dbfntx0.prg + * formatting (adding EOL at EOF) + + * harbour/include/hbapifs.h + * harbour/source/rtl/filesys.c + * added hb_fsLockLarge() and hb_fsSeekLarge() which uses 64bit ofsets + + * harbour/source/rdd/workarea.c + * set current work area to the used one in EVALBLOCK RDD method + before code block evaluation + + * harbour/source/vm/harbinit.prg + * harbour/source/vm/hvm.c + + added hb_vmDoInitClip() which calls CLIPINIT function to initialize + ErrorBlock() and __SetHelpK() + Because on some platform the execution order of init functions + is out of Harbour control then CLIPINIT has to be called explicitly + in VM initialization process before hb_vmDoInitFunctions() and do not + depends on INIT clause. + * small modification in VM loop which gives noticeable speed-up + +2005-01-23 09:05 UTC+0100 Antonio Linares + * makefile.nt + + hbverdsp.obj module added to makefile.nt + +2005-01-22 23:40 UTC+0300 Alexander Kresin + * source/rdd/dbfntx/dbfntx1.c + ! Yet another rare bug fixed. + +2005-01-22 19:55 UTC+0300 Alexander Kresin + * source/rdd/dbfntx/dbfntx1.c + ! Bug fixed, which oocured in some rare situations while record updating. + +2005-01-13 09:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rtl/mod.c + ! fixed mod() function to be Clipper/DBASE III compatible + (not the % operator) for combination of psitive and negative + numbers + + +2005-01-13 08:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + + harbour/include/hbfixdj.h + + I missed to add this file in my last commit - it's borrowed from + xHarbour. + * harbour/source/rtl/filesys.c + ! fixed DJGPP compilation I broke + + +2005-01-12 18:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/hbgtmk.sh + * harbour/make_rpm.sh + * harbour/harbour.spec + * added flex to dependences + * added --without gpl swich to exclude code which needs 3-rd party + GPL libs (GPM, SLANG) - necessary for people who want to create + commercial closed source application + + * harbour/make_gnu.sh + * modified DJGPP detection - try to use env var first + * set HB_GT_LIB depending on platform information + * check PREFIX env var for default installation + + * harbour/make_tgz.sh + * modified to work with DJGPP and 8.3 file names + + * harbour/bin/hb-func.sh + * DJGPP support + + * harbour/bin/pack_src.sh + * autodetect Harbour version number + + * harbour/config/linux/gcc.cf + * added small comment + + + harbour/config/linux/owatcom.cf + + OpenWatcom support on Linux + + * harbour/config/w32/global.cf + * harbour/config/w32/mingw32.cf + * small modification in clean procedure + + added Phil's modification for MINGW cross compilation in Linux and BSD + + * harbour/source/compiler/gencobj.c + + added Phil's modification for MINGW cross compilation in Linux and BSD + + * harbour/include/hbsetup.h + * added OS_HAS_DRIVE_LETTER, OS_PATH_DELIMITER_STRING, OS_FILE_MASK, + OS_DRIVE_DELIMITER and HOST_OS_UNIX_COMPATIBLE + * modified for OW on Linux and MINGW cross compilation + * added snprintf macro for compilers which do not support it + + * harbour/source/rtl/mod.c + ! fixed bug in mod(a,b) when a/b exceeds LONG limit + + * harbour/source/rtl/filesys.c + * removed HB_FS_DRIVE_LETTER - use OS_HAS_DRIVE_LETTER + * modified for OW on Linux and MINGW cross compilation + + * harbour/contrib/libct/files.c + * harbour/include/hb_io.h + * harbour/include/hbdefs.h + * harbour/source/rtl/diskspac.c + * harbour/source/rtl/disksphb.c + * harbour/source/rtl/fssize.c + * harbour/source/rtl/fstemp.c + * harbour/source/rtl/hbffind.c + * harbour/source/rtl/net.c + * harbour/source/rtl/seconds.c + * harbour/source/rtl/gtcrs/Makefile + * harbour/source/rtl/gtcrs/kbdcrs.c + * harbour/source/rtl/gtpca/gtpca.c + * harbour/source/rtl/gtsln/Makefile + * harbour/source/rtl/gtsln/gtsln.c + * harbour/source/rtl/gtsln/kbsln.c + * harbour/source/rtl/gtstd/gtstd.c + * harbour/source/vm/hvm.c + * harbour/source/vm/mainstd.c + * harbour/source/vm/mainwin.c + * modified for OW on Linux and MINGW cross compilation + + * harbour/source/vm/memvars.c + - removed unnecessary checking for s_globalTable == NULL in + hb_memvarValueDecRef() - in Harbour it cannot happen + * harbour/source/vm/itemapi.c + - removed snprintf macros (see hbsetup.h) + * fixed possible GPF in hb_itemCopyC() + * modified hb_itemGetPtr() to check item type + + +2005-01-06 12:15 UTC+0100 Ryszard Glab + * source/pp/ppcore.c + * defined pseudo-functions' parameters are case sensitive now + (this fixes bug #define F( n ) FF( n, N ) ) + + +2005-01-03 14:15 UTC+0100 Ryszard Glab + * include/hbexprb.c + * source/compiler/exproptb.c + * source/macro/macrob.c + * fixed to compile with SIMPLEX defined + Notice: Simplex version is not updated for a long time and + it doesn't support all fixes from FLEX version + + +2005-01-03 10:30 UTC+0100 Ryszard Glab + * include/hbcomp.h + * include/hbexprb.c + * include/hbmacro.h + * source/compiler/exproptb.c + * source/compiler/harbour.c + * source/compiler/hbgenerr.c + * source/macro/macrob.c + * source/vm/macro.c + * compiler reports error on the following syntax now (Clipper + compatibility): + {|| ¯ovar anysymbol} + "codeblock contains both macro and declared symbol reference" + Notice, that Clipper reports error even in this case: + MEMVAR mvar + {|| &mvar,mvar} + + * source/vm/memvars.c + * restored initial and expand sizes for memvars table + + * source/pp/ppcore.c + * some empty lines added + +2004-12-27 10:37 UTC+0100 Ryszard Glab + * source/vm/memvars.c + * changed algorithm for recycling of unused memvar values + - thanks to Przemek + + +2004-12-31 06:16 UTC-0800 Luis Krause Mantilla + * harbour/source/codepage/cdpesmwi.c + ! the init values were set to ESWIN instead of ESMWIN + Somehow my original entry was obliterated from the changelog as well as + my original commit of cdpesmwi.c: + + 2004-12-29 18:24 UTC-0800 Luis Krause Mantilla + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + ! Added missing/new files from source/codepage/*.c & source/lang/*.c + + source/codepage/cdpesmwi.c + + Added Spanish Modern codepage + +2004-12-31 12:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbapicdp.h + * harbour/source/codepage/cdp_tpl.c + * harbour/source/codepage/cdpeldos.c + * harbour/source/codepage/cdpelwin.c + * harbour/source/codepage/cdpesdos.c + * harbour/source/codepage/cdpeswin.c + * harbour/source/codepage/cdpgedos.c + * harbour/source/codepage/cdpgewin.c + * harbour/source/codepage/cdphu852.c + * harbour/source/codepage/cdphuwin.c + * harbour/source/codepage/cdppl852.c + * harbour/source/codepage/cdppliso.c + * harbour/source/codepage/cdpplmaz.c + * harbour/source/codepage/cdpplwin.c + * harbour/source/codepage/cdppt850.c + * harbour/source/codepage/cdpptiso.c + * harbour/source/codepage/cdpru866.c + * harbour/source/codepage/cdprukoi.c + * harbour/source/codepage/cdpruwin.c + * harbour/source/codepage/cdpsl437.c + * harbour/source/codepage/cdpsl852.c + * harbour/source/codepage/cdpsliso.c + * harbour/source/codepage/cdpslwin.c + * harbour/source/codepage/cdpsrwin.c + * harbour/source/rtl/cdpapi.c + * fix memory leak reported for accented and multi byte CPs + + + harbour/source/codepage/cdpesmwi.c + * added missing Spanish modern CP + + * harbour/include/hbstack.h + * harbour/include/hbapiitm.h + * harbour/source/vm/estack.c + * harbour/source/vm/itemapi.c + + added hb_stackReturnItem() + - removed hb_itemReturnPtr() + + * harbour/source/rdd/workarea.c + ! fixed possible restoring of scopes in scoped relations after + 'SET RELATION TO' + + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbfdbt/dbfdbt1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * use hb_stackReturnItem() instead of direct stack accessing + + * harbour/source/rdd/dbfntx/dbfntx1.c + ! Fixed opening NTX file in ReadOnly mode + * use hb_stackReturnItem() instead of direct stack accessing + + * harbour/source/rtl/filesys.c + * cleaned unnecessary initialization + + * harbour/source/vm/memvars.c + * formatting and small fix for calling GC after hb_memvarsRelease() + +2004-12-28 11:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/contrib/samples/dbf.c + * harbour/contrib/samples/time.c + * harbour/source/compiler/genc.c + * harbour/source/compiler/gencli.c + * harbour/source/rdd/dbcmd.c + * harbour/source/rtl/accept.c + * harbour/source/rtl/errorapi.c + * harbour/source/vm/hvm.c + * harbour/source/vm/initsymb.c + * harbour/source/vm/macro.c + * harbour/source/vm/memvclip.c + * changed 'extern HB_FUNC' to HB_FUNC_EXTERN for easier ABI + manipulations + +2004-12-28 10:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/harbour.spec + * harbour/hbgtmk.sh + * harbour/make_rpm.sh + * harbour/bin/pack_src.sh + * updated for recent changes in make process + + * harbour/contrib/Makefile + * added odbc lib for Linux compilation + + * harbour/contrib/btree/Makefile + * changed lib name from hb_btree to hbtree + + * harbour/contrib/btree/hb_btree.api + * harbour/contrib/btree/hb_btree.c + * fixed GCC compilation in HB_TR_DEBUG mode + + * harbour/contrib/hbzlib/hbzip.h + * harbour/contrib/hbzlib/include/hbzip.h + * harbour/include/hbapi.h + * harbour/include/hbapicdp.h + * harbour/include/hbapierr.h + * harbour/include/hbapifs.h + * harbour/include/hbapigt.h + * harbour/include/hbapiitm.h + * harbour/include/hbapilng.h + * harbour/include/hbapirdd.h + * harbour/include/hbcomp.h + * harbour/include/hbdate.h + * harbour/include/hbdbsort.h + * harbour/include/hberrors.h + * harbour/include/hbexprb.c + * harbour/include/hbexprop.h + * harbour/include/hbhash.h + * harbour/include/hbinit.h + * harbour/include/hbmacro.h + * harbour/include/hbpp.h + * harbour/include/hbrdddel.h + * harbour/include/hbrddntx.h + * harbour/include/hbrddsdf.h + * harbour/include/hbrddwrk.h + * harbour/include/hbset.h + * harbour/include/hbstack.h + * harbour/include/hbtrace.h + * harbour/include/hbvm.h + * harbour/include/hbvmpub.h + * changed #if defined (HB_EXTERN_C) to HB_EXTERN_BEGIN / HB_EXTERN_END + macros for easier manipulation with different ABI + * added HB_IS_BADITEM() macro for debugging + * synced CDP with xHarbour - added basic Unicode support + * synced RDD with xHarbour + + * harbour/source/codepage/Makefile + * harbour/source/codepage/cdp_tpl.c + * harbour/source/codepage/cdpeldos.c + * harbour/source/codepage/cdpelwin.c + * harbour/source/codepage/cdpesdos.c + * harbour/source/codepage/cdpeswin.c + * harbour/source/codepage/cdpgedos.c + * harbour/source/codepage/cdpgewin.c + * harbour/source/codepage/cdphu852.c + * harbour/source/codepage/cdphuwin.c + * harbour/source/codepage/cdppl852.c + * harbour/source/codepage/cdppliso.c + * harbour/source/codepage/cdpplmaz.c + * harbour/source/codepage/cdpplwin.c + * harbour/source/codepage/cdppt850.c + * harbour/source/codepage/cdpptiso.c + * harbour/source/codepage/cdpru866.c + * harbour/source/codepage/cdprukoi.c + * harbour/source/codepage/cdpruwin.c + * harbour/source/codepage/cdpsl437.c + * harbour/source/codepage/cdpsl852.c + * harbour/source/codepage/cdpsliso.c + * harbour/source/codepage/cdpslwin.c + * harbour/source/codepage/cdpsrwin.c + + harbour/source/codepage/uc1250.c + + harbour/source/codepage/uc1251.c + + harbour/source/codepage/uc1253.c + + harbour/source/codepage/uc1257.c + + harbour/source/codepage/uc737.c + + harbour/source/codepage/uc850.c + + harbour/source/codepage/uc852.c + + harbour/source/codepage/uc866.c + + harbour/source/codepage/uc88591b.c + + harbour/source/codepage/uc8859_1.c + + harbour/source/codepage/uc8859_2.c + + harbour/source/codepage/uckoi8.c + + harbour/source/codepage/uckoi8u.c + + harbour/source/codepage/ucmaz.c + * harbour/source/rtl/cdpapi.c + * synced HB CDP API with xHarbour - added basic Unicode support + + * harbour/source/common/expropt2.c + + * harbour/source/common/hbstr.c + * removed unnecessary initialization to avoid BCC warnings + + * harbour/source/compiler/harbour.c + * formatting + hb_compCodeBlockStop() looks like work in progress or is has + some old unused code - Ryszard, can you look at it? + + * harbour/source/macro/macro.y + * removed hack for GCC and old Bison versions + + * harbour/source/pp/ppcore.c + * removed unnecessary initialization to avoid BCC warnings + + * harbour/source/pp/pptable.c + + added some sets for RDD synchronization with xHarbour + + * harbour/source/rdd/dbcmd.c + + added __RDDGETTEMPALIAS + + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/dbfuncs.prg + * harbour/source/rdd/dbnubs.c + * harbour/source/rdd/dbstrux.prg + * harbour/source/rdd/hbdbsort.c + * harbour/source/rdd/rddord.prg + * harbour/source/rdd/workarea.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbfdbt/dbfdbt1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * synchronized with xHarbour - still dbcmd.c has to be synced yet + ! fixed all known bugs + Alexander, please look at DBFNTX - I hope all is correct. + + * harbour/source/vm/codebloc.c + * formatting + + * harbour/source/vm/fm.c + + added HB_PARANOID_MEM_CHECK to force reallocations in hb_xrealloc + and fill allocated and freed memory with HB_MEMFILER (0xff by default) + It's for debugging only. + + * harbour/source/vm/hvm.c + ! fixed hb_vmTopNumber() declaration for BCC + * use hb_gcCollectAll() at HVM exit instead of hb_gcReleaseAll() to + report allocated and not freed items - It could caused that some + programs begin to report memory leaks. + + * harbour/source/vm/itemapi.c + * check for HB_IS_BADITEM inside hb_itemClear() when compiled with + HB_PARANOID_MEM_CHECK for debugging + + * harbour/source/vm/memvars.c + * formatting + ! fixed pItem initialization in hb_memvarDetachLocal() + BTW - is this really necessary? I copy it form hb_itemUnRef() + but in fact it cannot detect all possible item reference cycles + if they appear - can they appear? + +2004-12-27 10:37 UTC+0100 Ryszard Glab + * source/vm/memvars.c + * changed algorithm for recycling of unused memvar values + - thanks to Przemek + +2004-12-24 07:47 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/vm/codebloc.c + * source/vm/itemapi.c + * source/vm/memvars.c + * fixed memvars and detached locals handling related to reallocation + of memvar's buffer and detaching of locals in a loop + - thanks to Przemek + + * source/vm/debug.c + *removed diagnostic hb_dbgstop() + + +2004-12-24 07:47 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/vm/codebloc.c + * source/vm/itemapi.c + * source/vm/memvars.c + * fixed memvars and detached locals handling related to reallocation + of memvar's buffer and detaching of locals in a loop + - thanks to Przemek + + * source/vm/debug.c + *removed diagnostic hb_dbgstop() + + +2004-12-20 05:00 UTC-0500 David G. Holm + * config/global.cf + * config/bsd/gcc.cf + * config/bsd/global.cf + * config/darwin/gcc.cf + * config/darwin/global.cf + * config/dos/bcc16.cf + * config/dos/djgpp.cf + * config/dos/global.cf + * config/dos/owatcom.cf + * config/dos/rsx32.cf + * config/dos/watcom.cf + * config/hpux/gcc.cf + * config/hpux/global.cf + * config/linux/gcc.cf + * config/linux/global.cf + * config/os2/gcc.cf + * config/os2/global.cf + * config/os2/icc.cf + * config/sunos/gcc.cf + * config/sunos/global.cf + * config/w32/bcc32.cf + * config/w32/gcc.cf + * config/w32/global.cf + * config/w32/mingw32.cf + * config/w32/msvc.cf + * config/w32/rsxnt.cf + * config/w32/watcom.cf + * Changed ARCH variable to HB_ARCH due to a conflict with a permanent, + non-replacable FreeBSD 5.3 environment variable with the same name. + +2004-12-16 13:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/make_gnu.sh + * harbour/make_tgz.sh + * fixed HPUX detection + + * harbour/bin/hb-func.sh + * late GTK lib checking for -xbgtk switch in hb* scripts + + * harbour/contrib/btree/hb_btree.api + * harbour/contrib/btree/hb_btree.c + * harbour/contrib/libnf/chdir.c + * harbour/contrib/libnf/dispc.c + * harbour/contrib/libnf/ftint86.ch + * harbour/contrib/libnf/getver.c + * harbour/contrib/libnf/mkdir.c + * harbour/contrib/libnf/proper.c + * harbour/contrib/libnf/rmdir.c + * casting and small fixes for OpenWatcom compilation + + * harbour/include/hbdefs.h + * force big endian if not detected automatically for HPUX + + * harbour/source/vm/itemapi.c + * HPUX uses isfinite() not finite() + + * harbour/source/vm/memvars.c + ! fixed endian dependent code + +2004-12-14 01:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * minor modifications of some static function names + +2004-12-14 01:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/vm/extend.c + * harbour/source/vm/itemapi.c + * fixed some minor typos in GCC hack + + added missing hb_parnint() + +2004-12-12 22:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/make_gnu.sh + + added platform autodetection if HB_ARCHITECTURE not set + and choosing the preferred compiler if HB_COMPILER not set + + added new platforms (Darwin, SunOS, BSD, HPUX) for info + descriptions - I do not want to decide if this should be + also added for make_gnu.bat, make_gnu.cmd because these + files cannot be used for this platforms. + Now make_bsd.sh and make_drw.sh are redundant - we should + decide if they should be kept in CVS or removed + + * harbour/make_tgz.sh + + added platform autodetection if HB_ARCHITECTURE not set + and choosing the preferred compiler if HB_COMPILER not set + + * harbour/contrib/Makefile + * changed the list of compiled contrib libs - now there is a + list of some default libs which can be compiled for all + platforms and only the chosen ones are added for some + platforms - it will be easier to manage because the number + of supported platforms is growing up. + Please check if it will work for other platforms/compilers. + +2004-12-12 02:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + + harbour/config/hpux/dir.cf + + harbour/config/hpux/gcc.cf + + harbour/config/hpux/global.cf + + harbour/config/hpux/install.cf + * Marcelo's files build files for HPUX borrowed from xHarbour + + * harbour/bin/hb-func.sh + * harbour/bin/hb-mkslib.sh + * harbour/bin/postinst.sh + * recent Phil's changes for Darwin and some of mine modifications and + cleanups + + * harbour/include/Makefile + + added some missing header files + + * harbour/include/hbapi.h + + added HB_ITEM_{GET|PUT}_NUMINTRAW() macros + + added hb_objGetClass() + + * harbour/include/hbdefs.h + * redefined multi commands macros to use do {...} while(0) for safe + use in any of C statement + + added HB_OS_HPUX + + * harbour/include/hbsetup.h + + added HB_OS_HPUX + + * harbour/include/hbstack.h + * hb_stackDec(), hb_stackPop(), hb_stackPush() redefined also as macros + when HB_STACK_MACROS is set + + added function hb_stackIncrease() + + * harbour/source/common/hbstr.c + * fixed possible buffer overflow + + * harbour/include/hbrdddbf.h + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/workarea.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * harbour/source/rdd/dbfdbt/dbfdbt1.c + * harbour/source/rdd/dbffpt/dbffpt1.c + * my recent fixes in xHarbour + + * harbour/source/rtl/copyfile.c + * small fix to error message + + * harbour/source/rtl/idle.c + + added HB_IDLESLEEP() and + void hb_idleSleep( double dSeconds ) + + * harbour/source/rtl/isprint.c + * use hb_xgrab()/hb_xfree() instead of malloc()/free() + + * harbour/source/rtl/run.c + * added __WATCOMC__ to C compilers supporting system() + + * harbour/source/vm/arrays.c + * cleaned hb_arrayFromStack(), hb_arrayFromParams() + + * harbour/source/vm/arrayshb.c + * small fixes to error messages + ! improved Clipper compatibility in AFILL() + * harbour/source/vm/asort.c + * separate entry for integer items - conversion to double may + damage big 64bit numbers + + * harbour/source/vm/classes.c + + added USHORT hb_objGetClass( PHB_ITEM pItem ) + + * harbour/source/vm/dynsym.c + ! fixed accessing to uninitialized memory + + * harbour/source/vm/estack.c + + added hb_stackIncrease() and modification for new stack macros + + * harbour/source/vm/hvm.c + * fixed some error messages + * some speed improvements + + * harbour/source/vm/itemapi.c + * some small optimizations + + * harbour/utils/hbtest/rt_misc.prg + * modified file name conversions test results for __PLATFORM__UNIX + +2004-10-31 01:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/compiler/cmdcheck.c + * replaced some free by hb_xfree + + * harbour/source/compiler/genc.c + * replace non ID characters in name of local symbol table by '_' + + * harbour/bin/hb-func.sh + * set proper X11 path for mixed (32/64bit) systems + +2004-10-24 20:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/config/bsd/global.cf + + added suppot for HB_COMMERCE and HB_WITHOUT_GTSLN env vars + + * harbour/source/compiler/Makefile + * formating + + * harbour/include/hbdefs.h + * harbour/source/vm/fm.c + * harbour/source/vm/garbage.c + + added macro HB_ALLOC_ALIGNMENT which forces allocated memory + alignment in FM and GC modules to given value - by default used + only when set HB_OS_SUNOS with 8 bytes alignment + +2004-10-23 02:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/bin/postinst.sh + * changed install command syntax for Solaris compatibility + + * harbour/include/hbdefs.h + * minor formating + + * harbour/source/vm/fm.c + + overwrite HB_MEMINFO_SIGNATURE with 0 in hb_xfree() for detection + redundant hb_xfree() call with the same pointer + + * harbour/source/rtl/spfiles.c + * set the real path in second parameter of RetPath even when + hb_spFiles fails to avoid race condition + + * harbour/source/vm/hvm.c + ! set proper decimal value in hb_vmDivide when the integer results + is converted into double + ! commented out integer division optimization at runtime for Clipper + compatibility + +2004-10-20 17:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/pp/ppcore.c + + added predefined macro __PLATFORM__UNIX for all *nix compatible + systems + + * harbour/contrib/dot/pp.prg + * harbour/source/pp/ppcore.c + * harbour/utils/hbtest/hbtest.prg + * harbour/utils/hbtest/rt_misc.prg + * replaced __PLATFORM__Linux with __PLATFORM__UNIX + + * harbour/harbour.spec + ! fixed stripping script files + + * harbour/source/rdd/dbfntx/dbfntx1.c + ! fixed casting + +2004-10-20 12:00 UTC+0300 Alexander Kresin + * source/rdd/dbcmd.c + ! Fixed a small bug in ordListAdd() function - there was a memory leak if + the index name is wrong. + +2004-10-20 09:41 UTC+0200 Chen Kedem + * makefile.bc + + Add the missing Greek language and codepage files + * doc/dirstruc.txt + + Add oneliner description for: config/darwin, config/sunos + +2004-10-20 07:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbdefs.h + + added macros HB_{PUT|GET}_{LONG|PTR} + * changed HB_CAST_BYTE_NUMBERS_OFF to HB_STRICT_ALIGNMENT + + * harbour/source/vm/fm.c + * harbour/source/vm/hvm.c + * harbour/source/vm/macro.c + * replaced code which made pointer casting without respecting + machine alignment with proper macros + +2004-10-19 22:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/bin/hb-func.sh + * changed 'sed' and 'tr' expresions to be compatible with SunOS + + added Darwin dynlib support borrowed from xHarbour thanks + to Phil Krylov + + * harbour/bin/hb-mkslib.sh + * minor modification + + * harbour/bin/postinst.sh + * harbour/config/darwin/gcc.cf + + Phil's modification for Darwin + * removed HB_OS_BSD and HB_BIG_ENDIAN - the first macro is set in + hbsetup.h when HB_OS_DARWIN is set, the second one should be + automatically detected inside hbdefs.h using C header files. + + * harbour/config/sunos/gcc.cf + * removed HB_BIG_ENDIAN macro - the same as above + + * harbour/include/hbapi.h + * harbour/source/vm/fm.c + * changed 16/32 bit hack #if UINT_MAX == ULONG_MAX for hb_xmem*() + functions to still not perfect but working on current platforms + #if UINT_MAX > USHRT_MAX + + * harbour/include/hbdefs.h + + added HB_DBL_LIM_INT24(d) and HB_LIM_INT24(l) macros + + try to autodect byte order using information form system C header + files - it whoud work for Linux, BSD/Darwin, SunOS - maybe also + for some other *nixes + * removed some dangerous casting. [x]Harbour code still depnds on + 8bytes double - in CDX for binary compatibility IEEE754 double is + necessary - if some architectures uses differ type of double value + for binary compatibility we will have to create proper conversion + functions for HB_{PUT|GET}_{LE|BE}_DOUBLE and HB_ORD2DBL/HB_DBL2ORD + macros + + * harbour/include/hbsetup.h + * define HB_OS_UNIX when HB_OS_SUNOS set + + * harbour/source/common/hbstr.c + * harbour/source/pp/ppcore.c + * casting + + * harbour/source/compiler/harbour.c + * use HB_LIM_INT*() macros instead of hard coded values + * removed some unnecessary if () statement - always true + + * harbour/source/compiler/harbour.l + * harbour/source/compiler/hbfix.c + * harbour/source/vm/macro.c + * use HB_LIM_INT*() macros instead of hard coded values + + * harbour/source/rdd/dbfcdx/dbfcdx1.c + ! minor fix + + * harbour/source/rdd/dbfntx/dbfntx1.c + ! small fix - the temporary index file was not removed + * do not force any name for temporary index files - important + in some cases (like DOS and short file names) + + * harbour/source/rtl/diskspac.c + ! fixed type in SunOS version + + * harbour/source/rtl/gtsln/Makefile + * minor cleanups + + * harbour/utils/hbtest/rt_math.prg + * changed to number results to be Clipper compatible. + +2004-10-14 21:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/bin/hb-func.sh + * harbour/bin/pack_src.sh + + harbour/config/sunos/dir.cf + + harbour/config/sunos/gcc.cf + + harbour/config/sunos/global.cf + + harbour/config/sunos/install.cf + + added SunOS support + + * harbour/config/darwin/gcc.cf + * small modification for nicer work with OS-X installed + on SF compile farm - I'm not Darwin user and SF is the only + one place I can make tests - if someone may fix me and leave + some comments 'why?' it will be nice. + + * harbour/contrib/Makefile + * exclude ADS RDD from Darwin build + + * harbour/contrib/rdd_ads/adsfunc.c + * some minor modification to avoid compiler warnings. + + * harbour/include/hbdefs.h + * fixed typo in HB_PUT_LE_DOUBLE() macro for big endian machines. + + * harbour/source/compiler/genc.c + ! fixed endian dependend code I left by mistake + + * harbour/source/compiler/harbour.c + * harbour/source/compiler/harbour.sly + * harbour/source/compiler/harbour.y + ! commented out hb_compSequenceFinish() + + * harbour/source/pp/ppcore.c + + added ( void * ) size as result of __ARCH{16,32,64}BIT__ and + __{LITTLE,BIG,PDP}_ENDIAN__ macros + + * harbour/source/pp/pragma.c + ! fixed possible string overflow + + * harbour/source/vm/itemapi.c + * harbour/source/rtl/diskspac.c + * harbour/source/rtl/disksphb.c + * harbour/source/rtl/fstemp.c + * harbour/source/rtl/idle.c + * harbour/source/rtl/math.c + * harbour/source/rtl/gtcrs/Makefile + * harbour/source/rtl/gtcrs/gtcrs.c + * harbour/source/rtl/gtcrs/kbdcrs.c + * harbour/source/rtl/gtcrs/mousecrs.c + * modified for SunOS and Darwin support. + +2004-10-12 02:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/makefile.bc + * updated for recent changes by Jacek Kubica - thanks. + +2004-10-12 01:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbdefs.h + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/workarea.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + * foramting some // replaced by /* */ + * adding some missing extensions I haven't ported fully in xHarbour + + * harbour/source/vm/maindllp.c + * fixed Windows compilation + The BCC and MSC make fiels have to be updated to the folowing changes: + - harbour/contrib/libct/invertwin.prg + + harbour/contrib/libct/invrtwin.prg + - harbour/source/common/hbffind.c + + harbour/source/common/hbverdsp.c + - harbour/source/rdd/dbfcdx/dbfcdx1.h + + harbour/source/rtl/hbffind.c + +2004-10-11 21:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/Makefile + + harbour/make_bsd.sh + + harbour/make_drw.sh + * harbour/make_tgz.sh + + harbour/bin/hb-func.sh + * harbour/bin/pack_src.sh + + harbour/bin/postinst.bat + + harbour/bin/postinst.sh + * harbour/config/dir.cf + * harbour/config/bsd/gcc.cf + * harbour/config/bsd/global.cf + + harbour/config/darwin/dir.cf + + harbour/config/darwin/gcc.cf + + harbour/config/darwin/global.cf + + harbour/config/darwin/install.cf + * harbour/config/dos/dir.cf + * harbour/config/dos/global.cf + * harbour/config/dos/install.cf + * harbour/config/dos/owatcom.cf + * harbour/config/dos/watcom.cf + * harbour/config/linux/gcc.cf + * harbour/config/linux/global.cf + * harbour/contrib/Makefile + * harbour/contrib/dot/pp_harb.ch + * harbour/contrib/libct/Makefile + * harbour/contrib/libct/bit1.c + * harbour/contrib/libct/bit2.c + * harbour/contrib/libct/bit3.c + * harbour/contrib/libct/files.c + * harbour/contrib/libct/ftoc.c + - harbour/contrib/libct/invertwin.prg + + harbour/contrib/libct/invrtwin.prg + * harbour/contrib/libct/keyset.c + * harbour/contrib/libct/makefile.bc + * harbour/contrib/libmisc/dates2.c + * harbour/contrib/rdd_ads/ads1.c + * harbour/contrib/rdd_ads/adsfunc.c + * harbour/contrib/samples/date.c + * harbour/include/dbinfo.ch + * harbour/include/hbapi.h + * harbour/include/hbapicdp.h + * harbour/include/hbapifs.h + * harbour/include/hbapigt.h + * harbour/include/hbapiitm.h + * harbour/include/hbcomp.h + * harbour/include/hbdate.h + * harbour/include/hbdbf.h + * harbour/include/hbdbferr.h + * harbour/include/hbdefs.h + * harbour/include/hbexprb.c + * harbour/include/hbexprc.c + * harbour/include/hbexprop.h + * harbour/include/hbmacro.h + * harbour/include/hbmath.h + * harbour/include/hbpcode.h + * harbour/include/hbrddcdx.h + * harbour/include/hbrdddbf.h + * harbour/include/hbrdddbt.h + * harbour/include/hbrddfpt.h + * harbour/include/hbrddntx.h + * harbour/include/hbset.h + * harbour/include/hbsetup.h + * harbour/include/set.ch + * harbour/source/common/Makefile + * harbour/source/common/expropt1.c + * harbour/source/common/expropt2.c + - harbour/source/common/hbffind.c + * harbour/source/common/hbfsapi.c + * harbour/source/common/hbstr.c + * harbour/source/common/hbver.c + + harbour/source/common/hbverdsp.c + * harbour/source/compiler/genc.c + * harbour/source/compiler/gencli.c + * harbour/source/compiler/harbour.c + * harbour/source/compiler/harbour.l + * harbour/source/compiler/harbour.slx + * harbour/source/compiler/harbour.sly + * harbour/source/compiler/harbour.y + * harbour/source/compiler/hbfix.c + * harbour/source/compiler/hbpcode.c + * harbour/source/compiler/hbusage.c + * harbour/source/compiler/simplex.c + * harbour/source/macro/macro.l + * harbour/source/macro/macro.slx + * harbour/source/macro/macro.y + * harbour/source/pp/ppcore.c + * harbour/source/rdd/dbcmd.c + * harbour/source/rdd/dbf1.c + * harbour/source/rdd/dbfcdx/dbfcdx1.c + - harbour/source/rdd/dbfcdx/dbfcdx1.h + * harbour/source/rdd/dbffpt/dbffpt1.c + * harbour/source/rdd/dbfntx/dbfntx1.c + * harbour/source/rtl/Makefile + * harbour/source/rtl/abs.c + * harbour/source/rtl/at.c + * harbour/source/rtl/datec.c + * harbour/source/rtl/dates.c + * harbour/source/rtl/dateshb.c + * harbour/source/rtl/datesx.c + * harbour/source/rtl/empty.c + * harbour/source/rtl/errorapi.c + * harbour/source/rtl/errorint.c + * harbour/source/rtl/filesys.c + * harbour/source/rtl/fstemp.c + + harbour/source/rtl/hbffind.c + * harbour/source/rtl/hbrandom.c + * harbour/source/rtl/idle.c + * harbour/source/rtl/inkey.c + * harbour/source/rtl/math.c + * harbour/source/rtl/minmax.c + * harbour/source/rtl/pad.c + * harbour/source/rtl/padc.c + * harbour/source/rtl/padl.c + * harbour/source/rtl/padr.c + * harbour/source/rtl/philes.c + * harbour/source/rtl/round.c + * harbour/source/rtl/soundex.c + * harbour/source/rtl/str.c + * harbour/source/rtl/strcase.c + * harbour/source/rtl/strmatch.c + * harbour/source/rtl/strtran.c + * harbour/source/rtl/strzero.c + * harbour/source/rtl/substr.c + * harbour/source/rtl/val.c + * harbour/source/rtl/gtcrs/gtcrs.c + * harbour/source/rtl/gtcrs/kbdcrs.c + * harbour/source/rtl/gtdos/gtdos.c + * harbour/source/rtl/gtsln/gtsln.c + * harbour/source/rtl/gtsln/kbsln.c + * harbour/source/rtl/gtsln/keytrans.c + * harbour/source/vm/arrays.c + * harbour/source/vm/codebloc.c + * harbour/source/vm/estack.c + * harbour/source/vm/eval.c + * harbour/source/vm/extend.c + * harbour/source/vm/hvm.c + * harbour/source/vm/itemapi.c + * harbour/source/vm/macro.c + * harbour/source/vm/memvars.c + * harbour/source/vm/runner.c + * harbour/tests/bldtest/bldtest.c + * harbour/utils/hbtest/hbtest.prg + * harbour/utils/hbtest/rt_misc.prg + * harbour/utils/hbtest/rt_str.prg + * Sorry but it's too much modification for full description + cvs diff gives file 785982 bytes length. So I only count the + main things: + ! cleand the code (no more warning messages under Linux and GCC and + DOS OpenWatcom) - some of them were real bugs + ! cleaned all endian dependend code I've found - now Harbour can be + compiled on LITLE and BIG endian machines - for some other like + PDP ENDIAN it's enough to define proper macros in hbdefs.h + + added macros for to get/put values in chosen byte order: + HB_GET_LE_[U]INT{16,24,32,64}( pPtr ) + HB_GET_BE_[U]INT{16,24,32,64}( pPtr ) + HB_PUT_LE_[U]INT{16,24,32,64}( pPtr, nVal ) + HB_PUT_BE_[U]INT{16,24,32,64}( pPtr, nVal ) + + added macro HB_CAST_BYTE_NUMBERS_OFF which disables casting in + HB_{GET|PUT}_{LE|BE}_* macros - it's necessary for some platforms + like ALPHA DEC. + ! cleaned the code for 64bit machines + * changed all parameters in hb_date* functions (day, month, year, week) + from LONG to int - it doesn't change binary compatibility for 32bit + machines but can cause troubles with compiling the old source + + changed HB_IT_LONG type to HB_LONG which is mapped to long long + by default for 32 bit machines. + + change HB_IT_INTEGER to be real 'int' C type not 'short int' + + added HB_IS_NUMINT() macro + + added hb_parnll, hb_stornll, hb_retnll, hbretnlllen, hb_itemPutNLL, + hb_itemPutNLLLen, hb_itemGetNLL which operates on LONGLONG + + added hb_parnint, hb_stornint, hb_retnint, hb_retnintlen, + hb_itemPutNInt, hb_itemPutNIntLen, hb_itemGetNInt which operates on + HB_LONG + + added HB_PUSHLONGLONG pcode + + changed compiler and optimizer to use HB_LONG numbers and reduce + conversion from to double which may damage the 64bit number. + + common functions for string to number conversions for compiler, RTL + and RDD to reduce problems with differ FL values for the same number: + hb_compStrToNum(), hb_valStrnToNum(), hb_strToNum(), hb_strnToNum() + + common function hb_numRoun() which uses exactly the same algorithms + as string to number conversion for the same reason - please keep + this functions together. + + hack inside hb_numRound() similar to the one used by CL5.3 + + hb_numInt() which uses uses the same hack as hb_numRound() + + rewritten number to string conversion + + some new string manipulation functions hb_strncpy(), hb_strncat(), ... + They works differ the the C one - always set 0 at the end, the buffer + has to be n+1 bytes length, the n is total size of buffer not the + left free space. + ! cleaned some code which operates on ASCIIZ string to avoid potential + buffer overflow + + updated RDD code - it's the first part - in few days I plan to change + workarea structure in both projects - it will break any 3rd party RDDs + so they have to be updated. I want to add SUPERTABLE into workarea + to allow creating new RDD on-line. + ! cleaned the bugs with negating integers - on most machines (like x86) + the integers are not 0 symmetric - it means that x = -x does not work + for {INT,LONG,LONGLONG}_MIN (hb_vmNegate, ABS()) + + cleaned error messages to be Clipper compatible. + + updated build process for .DEB packages - now hb* scripts and shared + libs are created by standard make install + * added new .prg #defines: __PLATFORM__, + __ARCH{16|32|64}BIT__, __LITTLE_ENDIAN__|__BIG_ENDIAN__|__PDP_ENDIAN__ + !!! cPlatfrom can have lower letters (for xHarbour compatibility) + If you do not like it please change it. + * others ... + +2004-10-10 21:35 UTC+0300 Alexander Kresin + * source/rdd/dbfntx/dbfntx1.c + ! Fixed a bug, introduced in a last change. + +2004-10-06 21:56 UTC+0300 Alexander Kresin + * source/rdd/dbfntx/dbfntx1.c + ! Fixed a bug, causing random GPFs while seeking. + +2004-10-06 05:40 UTC-0500 David Arturo Macias Corona + + harbour/contrib/mysql/difer.txt + Describe modifications to programs of harbour\contrib\mysql, in Spanish + + harbour/contrib/mysql/diffeng.txt + Describe modifications to programs of harbour\contrib\mysql, in English + + +2004-10-05 05:39 UTC-0500 David Arturo Macias Corona + * harbour/contrib/mysql/tmysql.prg + * harbour/contrib/mysql/tsqlbrw.prg + * Changes to approach Clipper behaviour + NOTE: My changes are marked in source code with label "DAVID:", to + help in quick review of changes, and these changes are + described widely in files difer.txt, diffeng.txt + These labels will be removed in a reasonable time + + + harbour/contrib/mysql/difer.txt + Describe modifications to programs of harbour\contrib\mysql, in Spanish + + harbour/contrib/mysql/diffeng.txt + Describe modifications to programs of harbour\contrib\mysql, in English + + +2004-09-08 16:40 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/vm/dynsym.c + * a new function 'hb_dynsymScope' was added to check if the + passed symbol has requested scope + + * source/vm/macro.c + * source/vm/hvm.c + * fixed support for static functions used in macro compiled + expressions (the runtime error is generated during evaluation + instead of macro compilation - like in Clipper) + + * source/pp/ppcore.c + * fixed support for '¯o.' in complex expressions + + +2004-09-07 10:30 UTC+0100 Ryszard Glab + * source/pp/ppcore.c + * fixed support for Clipper undocumented match marker, + Harbour is now 100% compatible here. + Notice that this fixes support for + SET FILTER TO ¯o + SET FILTER TO ¯o. .AND. expr + +2004-08-06 18:21 UTC-0500 David Arturo Macias Corona + * harbour/source/rtl/dates.c + ! fixed problem with dates. Now is Clipper compatible + For empty date it returns empty string, for valid + when number of years greater equal to 0 it returns formated date + and in other case it fills buffers with 0 characters. + Borrowed from xHarbour, in changes made by Przemyslaw Czerpak + It also fix ( CTOD( "" ) + 30 ) error reported by Randy Portnoff + +2004-08-04 10:28 UTC+0300 Alexander Kresin + * contrib/odbc/odbc.c + + New functions has been added: sqlSetStmtOption() and sqlColumns() + * contrib/mysql/mysql.c + + sqlUseRes() function added + * sqlListTbl() is modified - second parameter ( table template ) is added + +2004-08-03 11:10 UTC+0100 Ryszard Glab + * source/rtl/tget.prg + * GetNew() no longer evaluates passed set/get codeblock + +2004-08-01 14:38 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/rtl/filesys.c + ! Out of bound buffer access fixed. (I couldn't test this) + (Thanks to Chen Kedem) + +2004-07-27 20:41 UTC+0100 Antonio Linares + * include/hbclass.ch + + Added a previous #undef _HB_CLS_FUNCNAME for multiple classes + definitions on the same PRG + +2004-07-27 10:50 UTC-0800 Luis Krause Mantilla + * hrbdll.bc + + Added modules array.prg, block.prg, characte.prg, date.prg, + logical.prg, nil.prg, numeric.prg. + +2004-07-27 11:49 UTC+0100 Antonio Linares + + source/rtl/array.prg + + source/rtl/block.prg + + source/rtl/date.prg + + source/rtl/logical.prg + + source/rtl/nil.prg + + source/rtl/numeric.prg + * Harbour implementation of Class(y) Classes Array, Block, Date, Logical, + Nil, Numeric. + + * makefile.bc + + Added modules array.prg, block.prg, date.prg, logical.prg, nil.prg, + numeric.prg. + + WARNING: Other makefiles need to be updated + +2004-07-27 11:16 UTC+0100 Antonio Linares + * include/hbclass.ch + + Added optional clause FUNCTION to class definitions, + based on Class(y) implementation. This allows to use a different name, + if desired, to the defined class. i.e.: + + CLASS Date FUNCTION _Date + + As Date() is a reserved function name, we can use a _Date() one, but the + Class Name will remain as DATE. + +2004-07-27 02:09 UTC+0100 Antonio Linares + + source/rtl/characte.prg + * Harbour implementation of Class(y) Class Character + + * makefile.bc + + Added module characte.prg + + WARNING: Other makefiles need to be updated + +2004-07-26 9:03 UTC-0800 Luis Krause Mantilla + * hrbdll.bc + + Added module scalar.prg + +2004-07-26 10:50 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/compiler/cmdcheck.c + ! Writing out of bound when using -x compiler switch fixed. + (Thanks to Chen Kedem) + + * source/vm/cmdarg.c + ! Tabs removed. + +2004-07-26 01:21 UTC+0100 Antonio Linares + + source/rtl/scalar.prg + * Harbour implementation of Class(y) Class ScalarObject + + * makefile.bc + + Added module scalar.prg + + WARNING: Other makefiles need to be updated. + +2004-07-25 16:48 UTC+0100 Antonio Linares + * vm/classes.c + + functions hb_clsCreate(), hb_clsAdd() and hb_clsAssociate() added. + These functions are equivalents to Clipper __mdCreate(), __mdAdd() + and __mdAssociate(), though the parameters are different to easy + their use. + + The purpouse of these functions is to create new classes from C level, + a missing feature of Harbour classes engine. Harbour classes functions + never considered the possibility of being used from C level. + + USHORT hb_clsCreate( USHORT usSize, char * szClassName ) : Creates a + new class with usSize DATAs and szClassName Name. It returns the handle + of the new created class. + + void hb_clsAdd( USHORT usClassH, char * szMethodName, void * pFunction ) : + Adds a new method to the class, that will execute pFunction() code. + + void hb_clsAssociate( USHORT usClassH ) : Instantiates a new object of + the Class handle usClassH. The object is placed at the stack returned value, + so it may be accessed using hb_par...( -1, ... ) functions, or managing the + item directly. + +2004-07-19 21:42 UTC+0300 Alexander Kresin + * include/hbver.h + * doc/whatsnew.txt + * bin/pack_src.sh + * harbour.spec + * make_tgz.sh + * Release info has been changed for release 44. + +2004-07-19 17:05 UTC+0300 Alexander Kresin + * contrib/mysql/tmysql.prg + ! Added checking for decimal field type in :GetRow() and :GetBlankRow() - + provided by Mitja Podgornik + +2004-07-19 12:15 UTC+0100 Ryszard Glab + * doc/whatsnew.txt + *added some items and divided into few sections + +2004-07-18 19:50 UTC+0200 Tomaz Zupan + * harbour.spec + * Changed Optimisation level for rpm package to -O2, + because there are pboblems with -O3 and gcc 3.3 on Mandrake Linux + +2004-07-18 19:50 UTC+0300 Alexander Kresin + * contrib/mysql/mysql.c + * Some fixes and formatting. + +2004-07-18 13:05 UTC+0300 Chen Kedem + * doc/whatsnew.txt + + Add information about the upcoming alpha build 44 + +2004-07-17 21:58 UTC+0300 Alexander Kresin + * contrib/mysql/tmysql.prg + ! Small fix, provided by Mitja Podgornik + +2004-07-17 04:14 UTC-0500 David Arturo Macias Corona + * source/rtl/tget.prg + + Added DATA CapRow and DATA CapCol values + For Clipper 5.3x compatibility + +2004-07-16 13:40 UTC+0300 Alexander Kresin + * source/rdd/dbfntx/dbfntx1.c + ! Bug fixed in soft seek + * contrib/odbc/todbc.prg + ! Bug fixed in TODBC():Open() + +2004-07-12 17:19 UTC-0800 Luis Krause Mantilla + * source/rdd/dbcmd.c + ! fixed Clipper compatibility bug reported by Serge Jakimoff + * source/rtl/minmax.c + ! Fixed r/t error when Min() and Max() received logical values + to have Clipper compatibility + +2004-07-09 12:15 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/vm/codebloc.c + * source/vm/proc.c + *fixed to correctly return the procedure name where + the codeblock was created + + * source/common/hbffind.c + *fixed to set correctly size and modification date of + retrieved files on Linux/Unix -used from DIRECTORY() + function + + +2004-06-21 14:07 UTC-0500 Randy Portnoff + * source/rdd/dbcmd.c + * Fixed rddMoveRecords() so that copied records, which are + deleted, maintain their deleted status. + Reported by Marcos Gambeta + +2004-06-08 22:50 UTC+0300 Phil Krylov + * source/rtl/inkey.c + ! Renamed SETLASTKEY() to HB_SETLASTKEY(). + * source/debug/debugger.prg + ! Changed SETLASTKEY() to HB_SETLASTKEY(). + + contrib/libct/setlast.prg + * contrib/libct/Makefile + * contrib/libct/ctflist.txt + * contrib/libct/makefile.bc + * contrib/libct/makefile.vc + + Reimplemented SETLASTKEY() through HB_SETLASTKEY() + +2004-06-08 22:10 UTC+0300 Phil Krylov + - contrib/libct/setlast.prg + * contrib/libct/Makefile + * contrib/libct/ctflist.txt + * contrib/libct/makefile.bc + * contrib/libct/makefile.vc + - Removed SETLASTKEY() from libct, because it conflicts with the RTL + implementation which is also cleaner. + +2004-06-08 02:25 UTC+0300 Phil Krylov + * source/debug/debugger.prg + + Added preliminary CLD-compatible scripting capabilities. + +2004-06-07 18:15 UTC+0300 Phil Krylov + * source/debug/dbgmenu.prg + * source/debug/debugger.prg + ! Fixed some problems related to menus, colors and cursor positioning. + +2004-06-07 14:15 UTC+0300 Phil Krylov + * source/rtl/inkey.c + + Added hb_setInkeyLast() (copyright 2002 by Walter Negro) and + SETLASTKEY() (copyright 2003 by Przemyslaw Czerpak). Both functions + are borrowed from xHarbour. + * source/debug/debugger.prg + ! Fixed Left and Right keys behaviour in the code window (fix by Lorenzo + Fiorini, borrowed from xHarbour). + ! Also from xHarbour, but written by myself: + ! Restore LastKey() value on program execution. + ! Fixed Step() behaviour. + ! Removed the last dependencies of the debugger on SET_EXACT setting. + ! Fixed some issues with the Monitor window. + +2004-06-07 13:45 UTC+0300 Phil Krylov + * source/debug/dbgwa.prg + * source/debug/dbgtarr.prg + * source/debug/tbrwtext.prg + * source/debug/debugger.prg + ! Miscellaneous fixes borrowed from xHarbour: + ! Fixed support for monitoring work areas with non-contigous numbers. + ! Fixed monitoring empty subarrays. + ! Maintain separate "active" line and cursor line in the code window. + Support external initialization of TBrwText():lLineNumbers. + ! Fixed problems with breakpoints and source files stored in multiple + directories. The environment variable HB_DBG_PATH takes precedence + over PATH to search for source files. + +2004-06-03 11:00 UTC+0100 Ryszard Glab + + * source/compiler/harbour.c + * fixed to compile FOR var[index] + + +2004-06-02 05:30 UTC-0400 Alejandro de Garate + + * doc\en\file.txt + * function FOPEN() + ! Fixed the meaning of FO_DENYNONE + + Added FO_SHARED definition to the table + + * function FCREATE() + ! Fixed table title name, changed Atribute for Meaning + + * function FREAD() + ! Fixed typo at $ARGUMENTS$ section + ! Removed typo from $RETURNS$ section + ! Fixed typo at $EXAMPLES$ section + + * function FCLOSE() + ! Fixed typo at $EXAMPLES$ section + + * function CURDIR() + ! Fixed typo at $ARGUMENTS$ section + + * function MAKEDIR() + ! Fixed typo at $RETURNS$ section + + + doc\es\file.txt + + Added file's operations document + + +2004-05-27 14:35 UTC-0400 Alejandro de Garate + + + doc/es/codestyl.txt + + Added code style document file, missing in the last commit + + + doc/es/hb_apiln.txt + + Added Lang API Document + + * doc/es/lang.txt + * Updated Lang Document + + + doc/es/hb_vm.txt + + Added VM API Document + + +2004-05-24 22:37 UTC-0400 Alejandro de Garate + * doc/codestyl.txt + * Added Documentation item + + + doc/es/codestyl.txt + + Documented code style + + +2004-05-23 16:55 UTC+0300 Chen Kedem + + * doc/en/lang.txt + + Documentation for HB_LANGERRMSG(), HB_LANGMESSAGE(), HB_TRANSLATE() + + Added Greek and Greek ANSI to the list in HB_LANGSELECT() and + HB_SETCODEPAGE() + + add notes about the need to REQUEST language and code page module + * Some formating + +2004-05-21 14:40 UTC+0100 Ryszard Glab + + * source/compiler/harbour.l + * modified to compile correctly with flex version 2.5.31 + (IMHO it is m4 preprocessor bug) + + +2004-05-21 13:30 UTC+0300 Alexander Kresin + * source/rdd/dbf1.c + * source/rdd/dbfdbt/dbfdbt1.c + * Calls of hb_cdpTranslate() are changed to hb_cdpnTranslate() + + source/codepage/cdpeldos.c + + source/codepage/cdpelwin.c + + Greek language codepage files added - provided by Pete Dionisopoulos. + * source/lang/msgel.c + * source/lang/msgelwin.c + + Greek language files added - provided by Pete Dionisopoulos. + * source/codepage/Makefile + * source/lang/Makefile + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + * Makefiles has been updated due to new codepage and lang files. + * source/codepage/cdp_tpl.c + * source/codepage/cdpesdos.c + * source/codepage/cdpeswin.c + * source/codepage/cdpgedos.c + * source/codepage/cdpgewin.c + * source/codepage/cdphu852.c + * source/codepage/cdphuwin.c + * source/codepage/cdpla850.c + * source/codepage/cdppl852.c + * source/codepage/cdppliso.c + * source/codepage/cdpplmaz.c + * source/codepage/cdpplwin.c + * source/codepage/cdppt850.c + * source/codepage/cdpptiso.c + * source/codepage/cdpru866.c + * source/codepage/cdprukoi.c + * source/codepage/cdpruwin.c + * source/codepage/cdpsk852.c + * source/codepage/cdpskiso.c + * source/codepage/cdpsl437.c + * source/codepage/cdpsl852.c + * source/codepage/cdpsliso.c + * source/codepage/cdpslwin.c + * source/codepage/cdpsrwin.c + * Few lines are replaced with HB_CODEPAGE_INIT( ), as was suggested by + Ilias Lazaridis + + +2004-05-19 13:25 UTC+0100 Ryszard Glab + + * source/codepage/cdpsrwin.c + *replaced CR+LF with LF only + + +2004-05-18 15:45 UTC-0400 David G. Holm + * source/rtl/cdpapi.c + ! Corrected the function names reported by to HB_TRACE statements, + as pointed out by Chen Kedem . + +2004-05-18 16:12 UTC+0300 Chen Kedem + + * doc/en/lang.txt + + Documentation for HB_SETCODEPAGE() + * Some formating + +2004-05-14 16:05 UTC+0100 Ryszard Glab + + * include/hbexpra.c + * source/compiler/expropta.c + * source/compiler/harbour.c + * source/macro/macroa.c + * source/rtl/tget.prg + * source/rtl/tgetint.prg + * fixed to be more Clipper compatible + + * source/rtl/persist.prg + * fixed to not use xBase extensions + + +2004-05-13 11:00 UTC+0100 Ryszard Glab + + * source/rtl/transform.c + * TRANSFORM(1.23,"999.") correctly returns " 1." now + instead of empty string + + * source/rtl/tget.prg + * fixed to correctly display buffer when negative value + and '0' was pressed in the position next to decimal + point + e.g. -1230. was displayed as -123-. + * fixed support for '9999.' picture + + +2004-05-11 15:10 UTC+0100 Ryszard Glab + + * CVSROOT/avail + * restored write access to the entire repository for + all developers + + * doc/codestyl.txt + * small corrections (use 3 spaces instead of Tab) + + * include/hbcomp.h + * source/compiler/cmdcheck.c + * source/compiler/harbour.c + * source/compiler/hbusage.c + + added posibility to specify the output PPO file with -p + e.g. + -pppo/myfile.ppo + (thanks to Larry Sevilla) + + * source/rtl/tget.prg + * fixed positioning of cursor when the first pressed key + was a digit during editing of numeric value + + * source/compiler/hbfix.c + * source/rdd/dbcmd.c + * source/rdd/dbf1.c + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbffpt/dbffpt1.c + * source/rdd/dbfntx/dbfntx1.c + * source/rtl/dates.c + * source/rtl/filesys.c + * source/rtl/inkey.c + * source/rtl/isprint.c + * source/rtl/math.c + * source/rtl/philes.c + * source/vm/classes.c + * source/vm/hvm.c + * removed '//' comments + +2004-05-10 19:20 UTC-0400 David G. Holm + + - cvsplay.txt + - cvsplay2.txt + - Removed these two files. + +2004-05-08 10:40 UTC+0100 Ryszard Glab + + * source/rdd/dbf1.c + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbfdbt/dbfdbt1.c + * source/rdd/dbffpt/dbffpt1.c + * source/rdd/dbfntx/dbfntx1.c + * source/rtl/is.c + * source/rtl/strcase.c + * source/rtl/transfrm.c + * updated to refer hb_cdp_page instead of s_cdpage + + * source/vm/itemapi.c + * snprintf is used only in GCC/Linux and WatcomC + guarded with #ifdef HB_HAS_SNPRINTF + (this is ommision from my previous commit) + +2004-05-07 19:30 UTC+0100 Ryszard Glab + + + config/dos/owatcom.cf + * added configuration file for OpenWatcom (renamed + from watcom.cf) + + * config/dos/watcom.cf + * restored previous version so it correctly compiles + under WatcomC 10 - please use watcom.cf for WatcomC + and owatcom.cf for OpenWatcom + + * makefile.bc + * makefile.nt + * makefile.vc + * hrbdll.bc + * source/codepage/Makefile + + source/codepage/cdpsrwin.c + + new file with Serbian codepage + + * CVSROOT/avail + * removed reference to my local file + + * ERRATA + * updated (removed reference to tmpname) + + * doc/codestyl.txt + * updated with some coding guidelines adopted from PHP + (please fell free to discuss them ;-) + + * doc/howtocvs.txt + * added description for commit on Linux + + * include/hbapicdp.h + * source/codepage/cdpesdos.c + * restored previous versions + + * include/hbcomp.h + * added reference for WatcomC compiler + + * include/hbexprc.c + * fixed warning reported by WatcomC + + * source/vm/itemapi.c + * fixed infinite support for WatcomC + + * source/rtl/cdpapi.c + * renamed global symbol s_cdpage into hb_cdp_page + + * source/rtl/gtcrs/kbdcrs.c + * fixed reporting keystrokes with codes > 127 + +2004-05-06 21:10 UTC-0400 David G. Holm + * source/vm/itemapi.c + ! The funtion snprintf is not a Standard C function and does not + exist in the Version 12 of the Microsoft C++ compiler (MSVC 6). + +2004-05-06 18:00 UTC+0100 Ryszard Glab + + CVSROOT/avail + * CVSROOT/checkoutlist + * CVSROOT/commitinfo + * CVSROOT/loginfo + + access to CVSROOT files is now available for + project admins only + +2004-05-06 15:40 UTC+0100 Ryszard Glab + * include/hbexpra.c + * source/common/expropt2.c + * source/compiler/expropta.c + * source/macro/macroa.c + ! Fixed optimalization of AT,ASC,LEN,CHR functions + in the macro compiler (this fixes GPF reported + by Alexander) + +2004-05-05 08:08 UTC+0200 Ilias Lazaridis + * source/codepage/cdpesdos.c + ! Whitespace reformatting + +2004-05-03 05:04 UTC+0200 Ilias Lazaridis + * source/include/hbinit.h + + added macro HB_USE_PRAGMA_STARTUP + + * source/include/hdcdpapi.h + + added macro HB_CODEPAGE_INIT + + * source/codepage/cdpesdos.c + ! used HB_USE_PRAGMA_STARTUP and HB_CODEPAGE_INIT + (changes are applyable to other cdp*.c files, too, but will wait + until cdpesdos.c is completely reworked) + +2004-05-02 09:25 UTC+0300 Chen Kedem + * doc/howtocvs.txt + * Change references to CVSROOT (according to SourceForge documents) + from cvs.Harbour-project.sourceforge.net + into cvs.sourceforge.net + +2004-04-30 16:09 UTC+0200 Ilias Lazaridis + + /cvsplay.txt + + Added file with tortoiseCVS to check CVS + functionality without influencing rest of project + + [Note: the above changelog time entry is possibly not correct] + + +2004-04-27 12:57 UTC-0500 Randy Portnoff + + * contrib/rdd_ads/adsfunc.c + + Changes to ADSCOPYTABLE as follows: + + added logical return value + + added second optional param for ADS filter option + + Now uses default index order if set + + Changes to ADSCOPYTABLECONTENTS as follows: + ! changed default filter option from ADS_IGNOREFILTERS to ADS_RESPECTFILTERS + + added second optional param for ADS filter option + + Now uses default index order if set + +2004-04-24 15:30 UTC+0100 Ryszard Glab + + * include/hbapi.h + * changed ULONG hb_objHasMsg into BOOL hb_objHasMsg + + * include/hbvmpub.h + * added + union { + PHB_FUNC pFunPtr; + int iStaticsBase; + } value + to HB_SYMB structure to remove pointer/int conversion + + * source/compiler/genc.c + * source/compiler/gencli.c + * source/rdd/dbf1.c + * source/rdd/delim1.c + * source/rdd/sdf1.c + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbfdbt/dbfdbt1.c + * source/rdd/dbffpt/dbffpt1.c + * source/rdd/dbfntx/dbfntx1.c + * source/rtl/symbol.prg + * source/vm/classes.c + * source/vm/dynsym.c + * source/vm/hvm.c + * source/vm/initsymb.c + * source/vm/macro.c + * source/vm/runner.c + * changed to use new HB_SYMB structure + * removed all pointer/long castings (except runner.c) + + +2004-04-22 18:00 UTC-0500 David G. Holm + * source/vm/itemapi.c + ! #if check for for RSXNT and EMX must be ahead of GNUC test + in the infinity test block, because RSXNT and EMX both use + the GNUC compiler, but use isfinite() instead of finite(). + +2004-04-22 17:30 UTC-0500 David G. Holm + * contrib/libct/files.c + * contrib/libnf/color2n.c + * contrib/libnf/dispc.c + * contrib/libnf/n2color.c + * contrib/rdd_ads/ads1.c + * source/vm/memvars.c + ! Eliminated most warnings issued by MinGW GCC compiler. + +2004-04-22 10:57 UTC+0300 Chen Kedem + * doc/dirstruc.txt + + Add oneliner description for: contrib/hbzlib/include, + contrib/hbzlib/Linux, + tests/bldtest + +2004-04-21 16:35 UTC+0300 Chen Kedem + * doc/en/rddord.txt + - Remove docs for: ORDKEY() $DESCRIPTION$ section, ORDLISTADD(), + ORDLISTCLEAR(), ORDLISTREBUILD(), ORDNAME(), + ORDNUMBER(), ORDSETFOCUS() + because of copyright violation! + +2004-04-20 16:30 UTC-0400 David G. Holm + * contrib/Makefile + + Added an ifeq section for bsd builds. + +2004-04-19 11:43 UTC+0300 Chen Kedem + * doc/en/rdd.txt + - Remove docs for: RDDLIST(), RDDNAME(), RDDSETDEFAULT(), __RDDSETDEFAULT() + because of copyright violation! (the file is now EMPTY) + + * doc/en/rdddb.txt + - Remove docs for: __DBCONTINUE(), __DBZAP() + because of copyright violation! + +2004-04-17 12:30 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/rtl/empty.c + * source/rtl/idle.c + * source/vm/arrays.c + * source/vm/estack.c + * source/vm/extend.c + * source/vm/itemapi.c + * added missing code to use HB_IT_POINTER just like + other value's type + You can use: + hb_retptr( void * pointer ) + hb_parptr( ) -> void * + hb_storptr( void * pointer, ...... ) + to return/manage pointers from low level functions. + For example: + p = GET_SOME_POINTER() + ? VALTYPE(p) //prints: 'P' + ? p //prints: 0x12345678 + + * tests/onidle.prg + * fixed to use values of pointer type + + * tests/tstmacro.prg + * added code to test TYPE() function + +2004-04-16 17:08 UTC-0800 Luis Krause Mantilla + * contrib/rdd_ads/adsfunc.c + Renamed adsGetConnectionType() as AdsGetTableConType() and added + adsGetConnectionType( [hConnect] ) from Brian Hays' implementation in xHarbour. + + Due to the recent changes introduced to Harbour that render FWH inoperable, + this is likely my last contribution to Harbour's CVS as I'll be using xHarbour + only with my FWH apps (I currently use FW/FWH 2.3c). + +2004-04-16 19:05 UTC+0300 Alexander Kresin + * hrbdll.bc + * Makefile for the harbour.dll is changed + + mkbcdll.bat + + Bat file is added to build the Harbour.dll. Changing appropriate + environment variables inside it, you may include/exclude from the dll + RDD ADS, CT, Libmisc, Debug libraries. + + tests/bld4dll.bat + + Bat file is added to build sample applications, which uses harbour.dll + +2004-04-16 13:55 UTC+0300 Alexander Kresin + * include/hbstack.h + * source/vm/hvm.c + * source/vm/itemapi.c + * source/vm/estack.c + * source/vm/dynsym.c + * source/rtl/dates.c + * source/rtl/file.c + * source/rtl/filesys.c + * HB_EXPORT is added to ITEM API, FILE API and some other function + definitions to make it possible to call them when they are in the dll. + +2004-04-14 19:05 UTC-0800 Luis Krause Mantilla + * contrib/rdd_ads/adsfunc.c + Added adsGetConnectionType() provided by Randy Portnoff + +2004-04-14 12:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * tests/bldtest/Makefile + * fixed typo in file name + + * include/hbdefs.h + + added HB_COUNTER and HB_PTRDIFF types - first for reference + counters and second for any pointer differences and pointer to + integer conversions - this modification is synced with xHarbour + + * include/hbapi.h + * include/hbdefs.h + * source/rtl/philes.c + * source/vm/arrays.c + * source/vm/hvm.c + * source/vm/itemapi.c + * use HB_COUNTER type + +2004-04-09 15:00 UTC-0500 David G. Holm + * source/rdd/dbfntx/dbfntx1.c + ! Converted first parameter in the call to hb_fsCreateTemp from "" to + NULL in order to avoid having to provide a (BYTE *) type conversion + like the one that I added for the second parameter. + * source/rtl/fstemp.c + * Reformatted the code to match the Harbour coding style (in particular, + to use spaces instead of Tabs for indenting and to always use braces + for a code block that follows an if statement, even if only one line). + ! Added a null pointer check in the non-Unix code that checks the size + of the input arguments. + +2004-04-09 11:45 UTC+0100 Ryszard Glab + * source/debug/debugger.prg + * removed diagnostic ALERT call + +2004-04-09 10:10 UTC+0100 Ryszard Glab + * include/hbexpra.c + * include/hbexprop.h + * source/compiler/expropta.c + * source/macro/macroa.c + * source/vm/macro.c + * fixed my previous fix to correctly release memory in + the macro compiler + +2004-04-08 17:20 UTC+0100 Ryszard Glab + * include/hbexpra.c + * source/compiler/expropta.c + * source/macro/macroa.c + * source/vm/macro.c + * fixed bug cousing that some memory was deallocated + more then once + + * source/debug/debugger.prg + * fixed support for .T./.F. in command window + * fixed issues when the application was using + SET EXACT ON + +2004-04-06 15:40 UTC+0100 Ryszard Glab + * include/hbapi.h + * include/hbvm.h + * source/vm/hvm.c + * source/vm/macro.c + * fixed bug introduced earlier by me in the macro compiler: + PUBLIC ¯o + works correctly now + +2004-04-03 01:46 UTC-0300 Luiz Rafael Culik(culikr@brturbo.com> + * contrib/hbzlib/* + ! updated to use the same core as xharbour do + to compile on linux run ./lincompile.sh + This was done in respect to users that want to use harbour + + +2004-04-02 16:25 UTC+0100 Ryszard Glab + * source/compiler/gencli.c + * fixed warnings + + * source/rtl/cdpapi.c + *fixed warnings (Can the author of the code check if + I correctly parenthesized multiple || and && conditions?) + + * source/vm/classes.c + *fixed warning in gcc (commented out unused + static hb_clsScope function) + + * source/rdd/dbfntx/dbfntx1.c + * source/rtl/fstemp.c + * fixed hb_fsCreateTemp() to use 'mkstemp' on Unix + * fixed sorting procedure to use hb_fsCreateTemp + wrapper function + + * source/rtl/set.c + *hb_set.HB_SET_DIRSEPARATOR defaults to '/' on Unix + + +2004-04-02 13:15 UTC+0100 Ryszard Glab + * include/hbexpra.c + * include/hbexprop.h + * source/common/expropt1.c + * source/compiler/expropta.c + * source/macro/macro.y + * source/macro/macroa.c + * source/vm/macro.c + * fixed to release memory in cases where invalid + syntax was macro compiled + + * source/vm/itemapi.c + * fixed to correctly check for infinity on Unix + STR(LOG(-1)) no longer core dumps + + * source/rtl/filesys.c + * source/rdd/hbdbsort.c + * fixed to suppres warnings + + * source/pp/ppcore.c + * utils/hbtest/rt_misc.prg + * Clipper preproceses '**' into '^' - harbour too + +2004-04-02 12:17 UTC+0100 Antonio Linares + * source/rtl/fstemp.c + * source/rdd/dbfntx/dbfntx1.c + - Two linux linking time warnings removed + +2004-04-01 11:15 UTC+0100 Ryszard Glab + * include/hbexprb.c + * include/hbmacro.ch + * fixed support for strings as array of bytes + (in macro compiler) + * added a new #define HB_SM_ARRSTR as a flag + for HB_SETMACRO() to disable/enable strings + as array of bytes + + * source/vm/macro.c + * added HB_SM_ARRSTR support + * fixed TYPE() function to return correct value when an + assigment to undeclared variable is checked (Clipper + creates the memvar variable) - thanks to Phil Krylov + + * source/compiler/hbusage.c + * fixed typo for -ks switch + + +2004-04-01 09:09 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * source/common/hbffind.c + ! Fix for NT4 + + * source/rdd/dbsort.prg + * Fix by Mitja Podgornik + +2004-04-01 08:49 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) + + * bin/bld.bat + * Updated + +2004-03-31 21:45 UTC-0800 Luis Krause Mantilla + * source/rdd/workarea.c + + added scopped relations. Now OrdSetRelation() works with DBFCDX like it + does with Clipper 5.3b + * contrib/rdd_ads/ads1.c + + adsClearScope() method added to avoid r/t error with ADS and scoped relations + Thanks to Przemyslaw Czerpak for the fix (borrowed from xHarbour) + +2004-03-30 16:30 UTC+0100 Ryszard Glab + * include/hbapi.h + * source/vm/macro.c + * added HB_ITEM_PTR pError member to HB_MACRO structure + * fixed bug in macro compiler - calls to static + functions are not allowed in macro compiler + + * source/common/expropt1.c + * source/common/hbffind.c + *fixed minor warnings reported by Randy Portnoff + + * source/rtl/set.c + *SET(_SET_DEBUG) defaults to FALSE (Clipper compatible) + + * source/rtl/idle.c + *small optimization of hb_idleState() + + * source/compiler/harbour.y + *the compiler generates line number for DO CASE + (if debug info requested - to allow breakpoint) + + * source/debug/debugger.prg + *the debugger shows the line number for modules where + no source code is available + +2004-03-29 15:00 UTC-0500 David G. Holm + * source/pp/ppcore.c + ! Added missing type conversions on calls to hb_xgrab + and hb_xrealloc. + * source/rtl/memoline.c + ! Convert CR to space for Clipper compatibility. + +2004-03-25 09:35 UTC+0300 Alexander Kresin + * source/rdd/dbfcdx/dbfcdx1.c + ! minor fix + +2004-03-24 22:10 UTC+0300 Alexander Kresin + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbfcdx/dbfcdx1.h + * include/dbinfo.ch + * include/hbrddcdx.h + ! Some DBFCDX fixes, made by Przemyslaw Czerpak - borrowed from xHarbour. + +2004-03-24 10:08 UTC-0800 Luis Krause Mantilla + * source/rtl/tbcolumn.prg + ! fixed typo in comment + * source/rtl/tbrowse.prg + ! fixed initialization bug that miscalculated ::RowCount in ::Stabilize() + ! fixed ASSIGN freeze to return ::nFrozenCols (Clipper compatibility) + ! fixed ::RefreshCurrent() to validate ::aRedraw to avoid r/t error + ! fixed ::rect assignment in ::Configure (3rd param was ::nHeaderHeight + instead of ::nFooterHeight) + +2004-03-23 14:50 UTC+0100 Ryszard Glab + * source/pp/ppcore.c + * fixed parsing of nested #defines in command/translate + for example: + #define PRE_CHAR 'A' + #define IDX_EXPR(x) PRE_CHAR+x + INDEX ON IDX_EXPR(myfield) TO myfile + + * source/pp/pptable.c + * updated for fixes in ppcore.c (_DFSET define) + +2004-03-21 21:48 UTC-0800 Luis Krause Mantilla + * source/rtl/tbcolumn.prg + + added PreBlock and PostBlock instance variables for Clipper 5.3x compatibility + +2004-03-20 15:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + + tests/bldtest/Makefile + + tests/bldtest/bldtest.c + + simple C program to check if Harbour can be compiled on + used machine / system / C compiler + +2004-03-19 11:40 UTC+0100 Ryszard Glab + * utils/hbmake/hbmake.prg + *fixed #define datediff(,) into datediff(x,y) + (Clipper compatibility) (thanks to Jacek Kubica) + +2004-03-19 08:20 UTC+0100 Ryszard Glab + * source/debug/debugger.prg + * fixed refreshing of watchpoints + + * source/pp/ppcore.c + * fixed bug introduced with my previous commit + + +2004-03-18 12:45 UTC+0100 Ryszard Glab + * include/hberrors.h + * source/pp/ppcore.c + *fixed #define parsing of pseudofunctions in cases where + passed argument has the same name as declared parameter + *fixed #define parsing of pseudofunctions - the following + syntax is not allowed: + #define test(x,x) - duplicated parameters + #define test(x,) - missing parameter + #define test(x - missing parenthes + + * source/common/expropt1.c + * fixed generation of pcode for &(macro)->() syntax + + * source/compiler/harbour.l + * fixed GPF when string with unmatched terminator was used + + + * include/hbexprop.h + * source/compiler/harbour.y + * removed direct access to internals of expression + optimizer structure + + * source/debug/debugger.prg + * fixed checking of path separator + +2004-03-17 8:14 UTC-0800 Luis Krause Mantilla + * contrib/rdd_sys/ads1.c + * reuploaded to CVS (somehow it didn't get through the last time) + +2004-03-11 16:01 UTC-0800 Luis Krause Mantilla + * contrib/rdd_sys/ads1.c + * NTX compatibility fix in adsOrderListFocus() to keep current order if + selected one fails + +2004-03-10 10:40 UTC+0300 Alexander Kresin + * source/rdd/dbfcdx/dbfcdx1.c + ! Initialization code fixed. + +2004-03-09 22:30 UTC+0300 Alexander Kresin + * hrbdll.vc + * file has been updated due to adding source/rtl/hbrandom.c. + * include/hbapiitm.h + * source/rdd/itemapi.c + * source/rdd/dbf1.c + * source/rdd/workarea.c + * source/rdd/dbfcdx/dbfcdx1.c + * more synchronization with xHarbour's RDD. + +2004-03-09 10:15 UTC-0800 Luis Krause Mantilla + * hrbdll.bc + * Added reference to missing hbrandom.c. Can a MSVC user sync hrbdll.vc? + +2004-03-09 13:50 UTC+0100 Ryszard Glab + + source/rtl/altd.prg + +new file with ALTD() procedure code + + * hrbdll.bc + * hrbdll.vc + * makefile.bc + * makefile.nt + * makefile.vc + * source/rtl/Makefile + *added a reference to rtl/altd.prg + + * source/common/hbffind.c + *fixed to compile correctly with HB_OS_UNIX + + * include/hbcomp.h + * include/hbexpra.c + * include/hbexprb.c + * include/hbexprop.h + * include/hbpcode.h + * source/common/expropt1.c + * source/compiler/expropta.c + * source/compiler/exproptb.c + * source/compiler/genc.c + * source/compiler/harbour.c + * source/compiler/harbour.y + * source/compiler/hbfix.c + * source/compiler/hbgenerr.c + * source/compiler/hbpcode.c + * source/macro/macro.y + * source/macro/macroa.c + * source/macro/macrob.c + * source/vm/hvm.c + +added missing support for @¯o and @M->memvar + +added new pcode HB_MACROPUSHREF (all sources have to be + recompiled) + + * source/debug/dbgtwin.prg + * source/debug/debugger.prg + *fixed procedures callstack when modules with/without debug info + are linked together + *fixed the debugger activation when ALTD() is used in + a module with no debug info (the debugger shows up + on the first line with debug info after the ALTD() + is called) + + NOTICE: + Some compilers may require that the debug library has to + be specified as an object file in order to get the + debugger linked in. + +2004-03-08 19:50 UTC+0300 Alexander Kresin + + + ChangeLog + + Started a new ChangeLog. + * source/rtl/ChangeLog.014 + * Renamed old ChangeLog, due to file size. + + * include/hbapifs.h + * include/hbmath.h + * include/hbrddcdx.h + * include/hbrdddbf.h + * include/hbrddntx.h + * include/hbrdddbt.h + * include/hbrddfpt.h + * include/hbset.h + + + source/rtl/hbrandom.c + * source/rtl/Makefile + * source/rtl/filesys.c + * source/rtl/set.c + * source/rdd/dbf1.c + * source/rdd/dbfntx/dbfntx1.c + * source/rdd/dbfcdx/dbfcdx1.c + * source/rdd/dbfcdx/dbfcdx1.h + * source/rdd/dbffpt/dbffpt1.c + + * Changes in DBF RDD, DBFCDX RDD, DBFFPT RDD, made by Przemyslaw Czerpak + and Giancarlo Niccolai, has been borrowed from xHarbour. + + * makefile.bc + * makefile.nt + * makefile.vc + * make files has been updated due to adding source/rtl/hbrandom.c. diff --git a/harbour/bin/hb-func.sh b/harbour/bin/hb-func.sh index 5793d58c4a..8d7cb742b6 100644 --- a/harbour/bin/hb-func.sh +++ b/harbour/bin/hb-func.sh @@ -284,8 +284,10 @@ HB_MAIN_FUNC=\`echo \${HB_MAIN_FUNC}|tr '[a-z]' '[A-Z]'\` HB_PATHS="-I\${HB_INC_INSTALL}" GCC_PATHS="\${HB_PATHS} -L\${HB_LIB_INSTALL}" -LINK_OPT="${CC_L_USR}" -CC_OPT="" + +LN_OPT="${CC_L_USR}" +CC_OPT="${CC_C_USR}" +HB_OPT="${CC_PRG_USR}" HB_GPM_LIB="" if [ -f "\${HB_LIB_INSTALL}/libgtsln.a" ]; then @@ -312,13 +314,16 @@ fi if [ "\${HB_STATIC}" = "full" ]; then SYSTEM_LIBS="\${SYSTEM_LIBS} -ldl" if [ "\${HB_ARCHITECTURE}" = "linux" ]; then - SYSTEM_LIBS="\${SYSTEM_LIBS} -lpthread" + SYSTEM_LIBS="\${SYSTEM_LIBS} -lpthread" fi - LINK_OPT="\${LINK_OPT} -static" + LN_OPT="\${LN_OPT} -static" HB_STATIC="yes" fi -if [ "\${HB_XBGTK}" = "yes" ] || [ "\${HB_HWGUI}" = "yes" ]; then + +if [ "\${HB_XBGTK}" = "yes" ]; then SYSTEM_LIBS="\${SYSTEM_LIBS} \`pkg-config --libs gtk+-2.0\`" +elif [ "\${HB_HWGUI}" = "yes" ]; then + SYSTEM_LIBS="\${SYSTEM_LIBS} \`pkg-config --libs gtk+-2.0 --libs libgnomeprint-2.2\`" fi HB_LNK_REQ="" @@ -345,7 +350,7 @@ else if [ "\${HB_ARCHITECTURE}" = "darwin" ]; then pref="lib" ext=".dylib" - LINK_OPT="-bind_at_load -multiply_defined suppress" + LN_OPT="\${LN_OPT} -bind_at_load -multiply_defined suppress" elif [ "\${HB_ARCHITECTURE}" = "w32" ]; then pref="" ext=".dll" @@ -387,12 +392,9 @@ if [ -f "\${HB_LIB_INSTALL}/lib\${l}.a" ]; then fi if [ "\${HB_ARCHITECTURE}" = "darwin" ]; then - CC_OPT="-no-cpp-precomp -Wno-long-double" + CC_OPT="\${CC_OPT} -no-cpp-precomp -Wno-long-double" elif [ "\${HB_ARCHITECTURE}" = "sunos" ]; then HB_STRIP="no" -elif [ "\${HB_ARCHITECTURE}" = "w32" ]; then - CC_OPT="$CC_C_USR" - HB_OPT="$CC_PRG_USR" fi FOUTC="\${DIROUT}/\${FILEOUT%.*}.c" @@ -423,9 +425,9 @@ hb_link() fi if [ -n "\${HB_LNK_REQ}" ] || [ -n "\${HB_GT_REQ}" ] || [ -n "\${HB_MAIN_FUNC}" ]; then hb_lnk_request > \${_TMP_FILE_} && \\ - hb_cc "\$@" "\${_TMP_FILE_}" \${LINK_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${HB_USRLIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" + hb_cc "\$@" "\${_TMP_FILE_}" \${LN_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${HB_USRLIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" else - hb_cc "\$@" \${LINK_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${HB_USRLIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" + hb_cc "\$@" \${LN_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${HB_USRLIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" fi } diff --git a/harbour/harbour.spec b/harbour/harbour.spec index c2f4f49428..7b640361b0 100644 --- a/harbour/harbour.spec +++ b/harbour/harbour.spec @@ -59,7 +59,7 @@ %define hb_arch export HB_ARCHITECTURE=linux %define hb_cc export HB_COMPILER=gcc %define hb_cflag export C_USR="-DHB_FM_STATISTICS_OFF -O3" -%define hb_lflag export L_USR=%{?_with_static:-static} +%define hb_lflag export L_USR="${CC_L_USR} %{?_with_static:-static}" %define hb_mt export HB_MT=no %define hb_gt export HB_GT_LIB=gtcrs %define hb_gpm export HB_GPM_MOUSE=%{!?_without_gpm:yes} @@ -350,7 +350,7 @@ popd if [ "%{!?_with_static:1}" ] then unset HB_GTALLEG - export L_USR="-L${HB_LIB_INSTALL} -l%{name} -lncurses %{!?_without_gtsln:-lslang} %{!?_without_gpm:-lgpm} %{!?_without_x11:-L/usr/X11R6/%{_lib} -lX11}" + export L_USR="${CC_L_USR} -L${HB_LIB_INSTALL} -l%{name} -lncurses %{!?_without_gtsln:-lslang} %{!?_without_gpm:-lgpm} %{!?_without_x11:-L/usr/X11R6/%{_lib} -lX11}" for utl in hbmake hbrun hbpp hbdoc do diff --git a/harbour/source/vm/hvm.c b/harbour/source/vm/hvm.c index fc52ffa31d..766263567a 100644 --- a/harbour/source/vm/hvm.c +++ b/harbour/source/vm/hvm.c @@ -2166,7 +2166,7 @@ static void hb_vmPlus( HB_ITEM_PTR pResult, HB_ITEM_PTR pItem1, HB_ITEM_PTR pIte } while( --iPopCnt >= 0 ) { - hb_stackDec(); + hb_stackPop(); } } @@ -2243,7 +2243,7 @@ static void hb_vmMinus( HB_ITEM_PTR pResult, HB_ITEM_PTR pItem1, HB_ITEM_PTR pIt } while( --iPopCnt >= 0 ) { - hb_stackDec(); + hb_stackPop(); } }