799 lines
32 KiB
Plaintext
799 lines
32 KiB
Plaintext
/*
|
|
* $Id$
|
|
*/
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.45 Alpha Build 45 (2005-05-25)
|
|
|
|
The compiler
|
|
------------
|
|
- Fixed problem with dates.
|
|
- Some Out of bound buffer access fixed.
|
|
- Support for Clipper undocumented <x:&> match marker. Notice that this
|
|
fixes support for: SET FILTER TO ¯o / SET FILTER TO ¯o. .AND. expr
|
|
- Support for static functions used in macro compiled expressions
|
|
- Added new .prg #defines: __PLATFORM__<cPlatfrom>, __ARCH{16|32|64}BIT__,
|
|
__LITTLE_ENDIAN__|__BIG_ENDIAN__|__PDP_ENDIAN__
|
|
- Several internal changes in the way Harbour handle numbers.
|
|
Better Clipper compatibility in operations with numbers.
|
|
- Fixed accessing to uninitialized memory
|
|
- Fixed memvars and detached locals handling related to reallocation of
|
|
memvar's buffer and detaching of locals in a loop
|
|
- Changed algorithm for recycling of unused memvar values
|
|
- Improved memory handling.
|
|
- Removed hack for GCC and old Bison versions
|
|
- 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)
|
|
- Harbour now Run on 64 bits !
|
|
- Some small optimizations in harbour/source/vm/itemapi.c
|
|
|
|
The runtime modules
|
|
-------------------
|
|
- Enabled creation of classes from C level using functions:
|
|
hb_clsCreate(), hb_clsAdd() and hb_clsAssociate().
|
|
- Implementation of several Classes as in Class(y) lib:
|
|
ScalarObject, Character, Array, Block, Date, Logical,Nil, Numeric
|
|
- GetNew() no longer evaluates passed set/get codeblock
|
|
- A new function 'hb_dynsymScope' was added to check if the passed symbol
|
|
has requested scope
|
|
- Added many functions to the extend system: 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
|
|
- Cleaned all endian dependend code 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.
|
|
- Many macros added for easier manipulation of different APIs and platforms.
|
|
- Clean the code (no more warning messages under Linux and GCC and DOS
|
|
OpenWatcom) - some of them were real bugs
|
|
- Replaced code which made pointer casting without respecting machine
|
|
alignment with proper macros and fixed some problems with byte alignment
|
|
- Added function hb_stackIncrease() and modifications for new stack macros
|
|
- Improved Clipper compatibility in AFILL()
|
|
- Replace of malloc()/free() that still remains by hb_xgrab()/hb_xfree()
|
|
- Added new functions: HB_IDLESLEEP() and hb_idleSleep()
|
|
- Add the missing Greek language and codepage files.
|
|
- Added Spanish Modern codepage
|
|
- Synced HB CDP API with xHarbour - added basic Unicode support
|
|
- Added functions hb_fsLockLarge() and hb_fsSeekLarge() which uses 64bit
|
|
offsets in filesys.c for files larger than 2Gb
|
|
|
|
RDD
|
|
---
|
|
- Fixed a bug, causing random GPFs while seeking in NTX.
|
|
- Added some sets for RDD synchronization with xHarbour
|
|
- Improved indexing speed of DBFs with very big number of records (more
|
|
than 1 million records).
|
|
|
|
Contrib
|
|
-------
|
|
- New functions has been added to ODBC: sqlSetStmtOption() and sqlColumns()
|
|
- Changes in contrib MySQL module: sqlUseRes() added, sqlListTbl() is
|
|
modified, and other changes in tmysql.prg, tsqlbrw.prg
|
|
|
|
General
|
|
-------
|
|
- Updated build process for Debian Linux distribution (.DEB) packages.
|
|
Now hb* scripts and shared libs are created by standard make install
|
|
- Added support for Solaris (SunOS) and Darwin (Mac OS-X).
|
|
- Added support for Hewlett Packard Unix (HP_UX) and ALPHA DEC.
|
|
- Many adds and fix in compilation scripts on all platforms.
|
|
- Fixed some error messages
|
|
- Some speed improvements
|
|
- Many errors fixed
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.44 Alpha Build 44 (2004-07-19)
|
|
|
|
The compiler
|
|
------------
|
|
- Fixed support for late/early evaluation of macro exressions in a codeblock
|
|
(Flex version). Harbour(flex) is now full Clipper compatible here.
|
|
- Fixed support for stringify match markers <""> and <()> in Flex version.
|
|
- New compiler flag -ks was added to enable support for
|
|
strings as array of bytes. (Notice that support for strings
|
|
as array of bytes is disabled by default both in the Harbour compiler
|
|
and in harbour's runtime modules)
|
|
- Added a new compiler switch -kJ to disable jump optimalization and
|
|
NOOP pcode removal (optimalization is enabled by default).
|
|
- When xbase mode is not used (-kc or -kch) then compiler doesn't
|
|
generate the pcode for these xbase extended features.
|
|
- Added support for DO <proc> WITH @variable
|
|
- Fixed optimalization of literal strings that contain macro operator.
|
|
- Enabled support for break[].
|
|
- Fixed optimalization of far jumps (this fixes generation of pcode
|
|
for abnormally large (DO CASE/IF/ELSEIF statements)
|
|
- Added support to OpenWatcom DOS/Win32.
|
|
- Fixed compilation of &(exp) in normal stringify
|
|
markers (this fixes INDEX ON bug).
|
|
- Added missing support for @¯o and @M->memvar (aAdded a new
|
|
pcode HB_MACROPUSHREF)
|
|
- Fixed generation of pcode for &(macro)->() syntax.
|
|
- Fixed #define parsing of pseudofunctions in cases where
|
|
passed argument has the same name as declared parameter.
|
|
- Fixed parsing of nested #defines in command/translate
|
|
- Macro - Added HB_SM_ARRSTR support.
|
|
- Clipper preproceses '**' into '^' - harbour too
|
|
- Added HB_COUNTER and HB_PTRDIFF types - first for reference counters and
|
|
second for any pointer differences and pointer to integer conversions.
|
|
- 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.
|
|
- Removed all pointer/long castings (except runner.c).
|
|
- Fixed optimalization of AT,ASC,LEN,CHR functions
|
|
- Added posibility to specify the output PPO filename with -p flag
|
|
e.g. -pppo/myfile.ppo
|
|
- harbour.l modified to compile correctly with flex version 2.5.31.
|
|
- Fixed to compile FOR var[index]
|
|
|
|
The runtime modules
|
|
-------------------
|
|
- Enhanced Debugger.
|
|
- Added missing code to use HB_IT_POINTER just like other value's type.
|
|
For example:
|
|
p = GET_SOME_POINTER()
|
|
? VALTYPE(p) //prints: 'P'
|
|
? p //prints: 0x12345678
|
|
- The support for runtime definition of keycodes mapping was added
|
|
(translation from terminal key sequences into INKEY() codes)
|
|
eterm.map and linux.map are example files with keycode mapping
|
|
HB_GT_KEYMAP() function was added (ncurses GT only)
|
|
- Added possibility to load a character mapping using HB_GT_CHARMAP()
|
|
(ncurses GT only)
|
|
- Improved recognition of xterm compatible terminals (ncurses GT only)
|
|
- New internal command line arguments were added to control
|
|
application at runtime:
|
|
//FLAGS:switches
|
|
this flag controls compatibility issues of the virtual
|
|
machine
|
|
Available switches:
|
|
c - Clipper compatibility
|
|
h - Harbour extensions (enabled by default)
|
|
s - enable support for strings as array of bytes (disabled
|
|
by default)
|
|
For example:
|
|
myapp //FLAGS:ch
|
|
will disable support for strings as array of bytes
|
|
|
|
//CANCEL:key
|
|
//CANCELEX:keyex
|
|
this flag allows change the keycode of application cancel
|
|
request (usually Alt-C) - using normal INKEY() keycodes
|
|
or extended keycodes (CANCELEX)
|
|
For example:
|
|
myapp //CANCEL:304
|
|
will change Alt-c into Alt-b for cancelling (Alt-c is used
|
|
to insert polish diactric letter)
|
|
- Fixed to release PUBLIC variables correctly
|
|
- Fixed bug in Directory( "c:\*.*" ) that returned 0 when hidden files
|
|
were present.
|
|
- Alert() Fixed bug with messages longer then 60 bytes.
|
|
- TGet:display() fixed to always evaluate the get block before
|
|
displaying like in C52.
|
|
- TBColumn - Added PreBlock and PostBlock instance variables for
|
|
Clipper 5.3x compatibility.
|
|
- Fixed TYPE() function to return correct value when an assigment to
|
|
undeclared variable is checked (Clipper creates the memvar variable).
|
|
- TGet - Fixed to correctly display buffer when negative value
|
|
and '0' was pressed in the position next to decimal point.
|
|
- TGet - Fixed support for '9999.' picture.
|
|
- TRANSFORM(1.23,"999.") correctly returns " 1." now instead of empty string.
|
|
- Fixed to correctly check for infinity on Unix STR(LOG(-1)) no longer
|
|
core dumps.
|
|
- Fixed infinite support for WatcomC.
|
|
- Fixed to release memory in cases where invalid syntax was macro compiled.
|
|
- Added DATA CapRow and DATA CapCol values to TGET class
|
|
(for Clipper 5.3x compatibility).
|
|
- Fixed to correctly return the procedure name where the codeblock was created.
|
|
- Greek and Serbian language codepage files added.
|
|
- fixed to use 'mkstemp' on Unix (no more GCC linker warnings)
|
|
- Fixed file find API to be compatible with CA-Cl*pper on the lower level.
|
|
- Fixes in TBColumn class
|
|
|
|
RDD
|
|
---
|
|
- Latest RDD changes synced with xHarbour.
|
|
- Fixed dbCreate() bug that closed an open dbf with same name as newly
|
|
created dbf in a different folder.
|
|
- FIELDPUT() Fixed to accept and ignore field NIL values
|
|
without runtime error. C52 compatible.
|
|
- Added scopped relations. Now OrdSetRelation() works with DBFCDX like
|
|
it does with Clipper 5.3b.
|
|
- Changes to ADSCOPYTABLE.
|
|
- Changes to ADSCOPYTABLECONTENTS.
|
|
- Fixed rddMoveRecords() so that copied records, which are
|
|
deleted, maintain their deleted status.
|
|
|
|
Utilities
|
|
---------
|
|
- HBVer - A utility to automatically update include/hbver.h.
|
|
- BLDTEST : simple C program to check if Harbour can be compiled on
|
|
used machine / system / C compiler.
|
|
- Some updates for the Spanish documents.
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.43 Alpha Build 43 (2003-10-01)
|
|
|
|
- RDD DBFCDX is highly improved, it is very close to be stable now.
|
|
- New national codepages has been added.
|
|
- .NET support has been started.
|
|
- OLE support library has been added to contributions section.
|
|
- Many bug fixes and enhancements in all subsystems.
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.42 Alpha Build 42 (2003-04-08)
|
|
|
|
- Further speed improvements
|
|
- Codepage subsystem added
|
|
- strings as (C-alike) bytes arrays management
|
|
- Classes "[]" operator overloading support
|
|
- Classes ":=" operator overloading support for locals and statics variables
|
|
- Extend system Clipper more complete compatibility
|
|
- RDDADS enhancements: SET PATH, DEFAULT, DELETED, EXACT, DATEFORMAT
|
|
and EPOCH and their Set() function equivalents are now automatically
|
|
synchronized with the server instead of using the preprocessor
|
|
- Added support for some ADS version 6 features
|
|
- Many bug fixes and enhancements
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.41 Alpha Build 41 was not officially released (2002-12-31)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.40 Alpha Build 40 (2002-06-16)
|
|
|
|
- Great speed improvements
|
|
- ADS RDD: added support of extended data types, fixed seeking and
|
|
scoping on date type indexes
|
|
- HbMake enhanced : Now support MuniGUI. Internationalization
|
|
(Portuguese/English/Spanish) + HbMake with Windows user interface
|
|
- AltD() debugger invoke function fixed behavior
|
|
- DBFNTX functionality is significantly extended over standard Clipper's.
|
|
Few bugs fixed, internal algorithms improved, what gives much better
|
|
performance and index quality. Now DBFNTX is fully ready to Beta 1.0 stage
|
|
- DBFCDX more ready
|
|
- New enhancements and bug fixes in the debugger
|
|
- Many bug fixes and enhancements
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.39 Alpha Build 39 (2002-04-08)
|
|
|
|
- Delphi integration started
|
|
- Dbfntx basic functionality is ready
|
|
- Added new possibilities in hrb handling
|
|
- __dbSdf() is ready
|
|
- Enhacements to hbmake,hbzlib
|
|
- Great speed improvement
|
|
- New enhancements and bug fixes in the debugger
|
|
- Many bug fixes and enhancements
|
|
- Strings sharing and statics strings implementation (thanks to Ron Pinkas)
|
|
- RTL strings management functions optimization thanks to new function
|
|
hb_retclen_buffer() and optimized use for hb_retc( NULL )
|
|
- Optimized objects messages sending (thanks to Ron Pinkas)
|
|
- Harbour persistence (Class HBPersistent) optimized and impresively
|
|
more faster
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.38 Alpha Build 38 (2001-12-15)
|
|
|
|
- Added new function __VMVARSLEN() --> nStatics
|
|
It returns the total amount of used statics variables
|
|
- include/hbapi.h Enhanced HB_IS_OBJECT( PHB_ITEM )
|
|
- __ClsAddMsg() case HB_OO_MSG_ONERROR modifed to use hb_parnl( 3 )
|
|
- __ClsAddMsg() call, for ON ERROR clause, modified suplied parameters
|
|
- ::Super(::oneVar) is now correctly interpreted
|
|
- Freezed Scooping because it was not anymore working after the
|
|
previous fix. Waiting after Alpha build 38 to fix and re-enable it
|
|
- HGF (Harbour GUI multiplatform Framework) started
|
|
- Class HBPersistent added to RTL to provide Harbour objects persistence
|
|
- New PROPERTY | PERSISTENT clause added as a DATA feature
|
|
- New function __ClsGetProperties() added. Syntax:
|
|
__ClsGetProperties( <nClassHandle> ) --> <aPropertiesNames>
|
|
- Harbour Profiler foundation functions added
|
|
- New Apollo.lib for SIXNSX database connection via SDE60.DLL
|
|
- RDD Scope handling was changed to handle non-character
|
|
scopes correctly. Numeric scopes now work in RDDADS, but
|
|
scopes are not yet supported in DBFCDX.
|
|
- HB_FM_STATISTICS can be turned off by defining
|
|
HB_FM_STATISTICS_OFF in your make or bat files.
|
|
Rebuilding Harbour this way yields a faster program,
|
|
but it loses the ability to report on memory usage and leaks
|
|
- adssetServerType now returns any error numbers
|
|
- Added AdsRefreshRecord, AdsIsTableLocked, AdsIsRecordLocked
|
|
- Dave Pearson's bitflags.c, which I ported to Harbour.
|
|
Has functions to use a Harbour string for storing On/Off bit flags
|
|
- Added HB_TRACESTRING() which lets prg code trace a string into same
|
|
trace file/window as C traces
|
|
- Added __TRACEPRGCALLS( <lOnOff> ) --> <lOldValue>
|
|
Turns on | off tracing of PRG-level function and method calls.
|
|
Dumps symbol name just before it's called. This is very useful when
|
|
debugging GPFs as it will trace all PRG-level calls up until the crash.
|
|
Uses HB_TRACE so traces are in line with any C-level traces
|
|
- Martin and Walter added a bunch of functions to libct
|
|
- David added the Path stuff so file() and other functions can work right
|
|
- Platform support for FreeBSD 4.4, which requires installation
|
|
of the gmake (GNU make) port (instead of using FreeBSD's make)
|
|
- Hbzlib enhacements
|
|
- Some debugger fixes - it is now really usable.
|
|
- Hbmake enhacements
|
|
- On Win32 platforms, Harbour now supports the ability to create and
|
|
use .DLL files. These .DLL files can be used as pcode storage,
|
|
Harbour Runtime storage, or both, and if both, can be made callable
|
|
from other languages that use .DLL's as fully functional standalone
|
|
modules
|
|
- Extended run-time preprocessing possibilities
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.37 Alpha Build 37 (2001-06-26)
|
|
|
|
- Fixed and improved NTX support
|
|
- Improved and fixed OOP
|
|
- More enhanced DOT prompt with scripting engine
|
|
- Enhanced HBMake utility
|
|
- New HBZLib library for ZIP support in Harbour
|
|
- COPY TO DELIMITED and COPY TO SDF implemented
|
|
- Added support for HB_TR_FLUSH environment variable
|
|
- New Harbour License based on the license used for Guile 1.4
|
|
- New HB_INKEY_EXTENDED keyboard input mode
|
|
- More complete ADS support
|
|
- Extended run-time preprocessing possibilities (TPreprocessor class)
|
|
- Debugger fixes. It is really usable now.
|
|
- Access OLEDB & COM objects with the TOleAuto() class
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.36 Alpha Build 36 (2001-02-22)
|
|
|
|
- NTX read and write support
|
|
- Support for Inline C code
|
|
- Dot prompt and limited Harbour Interpreter
|
|
- More support and fixes for ADS databases
|
|
- Improved and fixed stack handling
|
|
- Improved OOP
|
|
- Better Class(y) and TopClass compatibility
|
|
- MemoEdit() for 95% complete
|
|
- More improved and enhanced TBrowse class
|
|
- Lots of improvements on the Harbour Debugger
|
|
- APPEND FROM & COPY TO started
|
|
- New hbMake utility
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.35 Alpha Build 35 (2000-08-15)
|
|
|
|
- Added HB_IDLE*() idle state handling functions.
|
|
- Watcom C++ fixes.
|
|
- SET RELATION support for RDDADS
|
|
- New language modules: IT, DE, PL
|
|
- Slang support enhanced
|
|
- MemoEdit()/TEditor enhancements
|
|
- .NTX support started (creation now works)
|
|
- HBDOC .CHM output
|
|
- Garbage collector added
|
|
- Compiler -u, -m support, support for automatically compiled files for
|
|
DO, SET FORMAT TO, etc., memory usage optimizations
|
|
- Added HB_DISKSPACE(), __DBLIST(), __DBAPPEND()
|
|
- Fixes: Line numbering, PP, macro compiler, RTL (Extend API, Item API,
|
|
TRANSFORM(), DISKSPACE(), CURDIR(), __GET()), HBDOC,
|
|
HBTEST (for Xbase++ and Linux), Documentation, Class engine
|
|
- HBZLIB enhancements
|
|
- MySQL database access contribution started
|
|
- ADS RDD encryption/decryption functions added
|
|
- New GTCGI driver
|
|
- Improved command line parsing
|
|
- Alternate Lexer (SimpLex), utilizes less memory, smaller Harbour.exe
|
|
as well as smaller compiled applications (due to smaller macro compiler)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.34 Alpha Build 34 (2000-06-02)
|
|
|
|
- OO engine enhanced (multiple inheritance, scoping, forwarding and delegating)
|
|
- Linux/Unix ncurses screen output and xterm mouse input support
|
|
- MEMOEDIT support started
|
|
- CONTRIBs better separated from core Harbour (TOOLS moved there)
|
|
- Simplified and enhanced base for multiplatform coding
|
|
- Language API (link/compile time language module selection)
|
|
- Several small optimizations, enhancements and fixes (compiler, macro, GT,
|
|
inkey, make and build systems, more strict compiler warnings)
|
|
- Compiler pcode size optimizations (new compact pcode versions added and
|
|
other tricks)
|
|
- Far jump pcode support
|
|
- Double number size support in pcode
|
|
- Pcode finalized in the compiler, instead of the output generation modules
|
|
- OS/2 support improved (DISKSPACE(), MEMORY(), locks, etc...)
|
|
- Linux/Unix support for file locks and commit
|
|
- DBFCDX index creation support (started)
|
|
- Strong Typing support
|
|
- OBJ generation support for BCC5x + Blinker5
|
|
- Several new CONTRIBs (Nanfor LIB, ZLIB, MSQL, CA-Tools LIB, GT LIB)
|
|
- Clipper 5.3 compatible MENUITEM, POPUP, TOPBAR classes
|
|
- HBDOC further enhanced
|
|
- RSX32 and RSXNT compiler support
|
|
- SETKEY functions, ASORT(), SAVESCREEN/RESTSCREEN rewritten in C
|
|
- Extensions (XPP, C53, Harbour) are easier to switch of and better separated
|
|
from Harbour
|
|
- Some fixes for 10 chars support
|
|
- New most compact and fast -gc0 (C language) output method added
|
|
- -gf switch renamed to -go
|
|
- Compiler /BUILD switch added
|
|
- Crew list added to /CREDIT compiler switch
|
|
- CURDIR(), CURDRIVE() fixed
|
|
- Updated national language modules
|
|
- More documented functions
|
|
- Documented all db* related functions
|
|
- New Item and Extend API functions
|
|
- New tests
|
|
- HBTEST made compatible with Xbase++
|
|
- DBU sources can be compiled with Harbour without changes
|
|
- Added more ADS RDD functions
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.33 Alpha Build 33 (2000-04-07)
|
|
|
|
- Final cleanups on global macro and symbol names
|
|
(date*(), console*(), HB_FUNC())
|
|
- DISKSPACE() enhancements
|
|
- Microsoft C++ 8.x compiler support started
|
|
- 10 character symbol support finalized
|
|
- VAL() made fully compatible
|
|
- New functions HB_COMPILER(), HB_FSIZE(), HB_FTEMPNAME(), HB_FTEMPCREATE()
|
|
- PP bug fixes
|
|
- More functions documented
|
|
- Fixed to compile with Borland C++ in C++ mode
|
|
- Handling of double/long number widths and decimals made completely CA-Cl*pper
|
|
compatible
|
|
- Some new CA-Tools compatible functions added
|
|
- MEMO type support
|
|
- OS/2 DispBegin()/DispEnd() support
|
|
- #pragma fixes and enhancements. (better XPP compatibility)
|
|
- Source files split to several smaller files
|
|
- GT API selection is now at link time instead of compile time
|
|
- Make and build files further cleaned up, enhanced, optimized, synchronized
|
|
etc...
|
|
- Compiler and platform detection enhanced, some hacks removed,
|
|
multiplatform cleanups and fixes.
|
|
- Warning levels upped, warnings fixed, code quality raised
|
|
- Version numbering standardized
|
|
- Multiple source file support in Harbour command line
|
|
- HBCLIP and RUNJAVA contribution dirs added
|
|
- HBDOC Enhacements: New subtags for better output: <par>,</par> for paragraph
|
|
<b></b> for bold, <i></i> for italic, <em></em> for bold italic font
|
|
<color:></color> for color <fixed></fixed> for fixed text
|
|
<table></table> for tables <insertfile:> to insert the content of another
|
|
file
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.32 Alpha Build 32 (2000-03-07)
|
|
|
|
- New Borland make files
|
|
- Many make and build processes fixes, enhancements, warning fixes
|
|
- Borland, MSVC and GNU-make processes don't collide anymore
|
|
- PP now supports code in header files
|
|
- Docs separated from the source
|
|
- Docs enhanced
|
|
- Compiler and macro fixes
|
|
- FRM and LBL support
|
|
- TBrowse fixes
|
|
- HBDOC improvments
|
|
- Some mouse support added
|
|
- New C include file names
|
|
- Many other small fixes and changes
|
|
- PP __DATE__ and __TIME__ support
|
|
- __TYPEFILE() added
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.31a Alpha Build 31a (2000-02-02)
|
|
|
|
- Bugs fixed
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.31 Alpha Build 31 (2000-01-27)
|
|
|
|
- Added macro support
|
|
- Many changes, fixes, and enhancements to compiler internals
|
|
- Many changes, fixes, and enhancements to RDD system
|
|
- Many changes, fixes, and enhancements to the GT API system
|
|
- Improved SETCURSOR() and SET( _SET_CURSOR )
|
|
- Added FIELDBLOCK() and FIELDWBLOCK()
|
|
- The Harbour '-w' command line option can set the maximal level of reported
|
|
warnings. The following levels are supported currently:
|
|
'-w0' - no warnings
|
|
'-w' or '-w1' - Clipper compatible warnings
|
|
'-w2' - some useful warnings missed in Clipper
|
|
'-w3' - warnings generated for Harbour language extensions
|
|
- The 'libs' directory is now named 'lib'
|
|
- The 'runner' program is now named 'hbrun'
|
|
- Some include files now have an 'hb' prefix in the name
|
|
- db_brows significantly enhanced
|
|
- Regression testing enhanced and expanded, replacing several standalone
|
|
test modules. Now in tests/regress directory
|
|
- Added FSETDEVMOD()
|
|
- Added READINSERT()
|
|
- Added MEMOLINE()
|
|
- Added undocumented DISPOUTAT()
|
|
- Added DEFPATH() and __DEFPATH()
|
|
- Enhanced VERSION() to optionally include the compiler version used to
|
|
create Harbour
|
|
- Enhanced OS() to include more Windows version details
|
|
- Added __INPUT(), __WAIT(), and SETTYPEAHEAD()
|
|
- Added several undocumented __BOX*() functions
|
|
- Added HB_VALTOSTR()
|
|
- Improved Windows INKEY() support
|
|
- Added missing Clipper 5.3 SETs:
|
|
_SET_VIDEOMODE
|
|
_SET_MBLOCKSIZE
|
|
_SET_MFILEEXT
|
|
_SET_STRICTREAD
|
|
_SET_OPTIMIZE
|
|
_SET_AUTOPEN
|
|
_SET_AUTORDER
|
|
- Added undocumented GETE()
|
|
- Compatibility functions added:
|
|
__CLASSNEW()
|
|
__CLASSINSTANCE()
|
|
__CLASSADD()
|
|
__CLASSNAME()
|
|
__CLASSSEL()
|
|
__CLEAR()
|
|
__ATCLEAR()
|
|
- Added ANNOUNCE CLIPPER520 and ANNOUNCE CLIPPER530
|
|
- Added PROCFILE()
|
|
- Added national message related functions:
|
|
ISAFFIRM(), ISNEGATIVE(), NATIONMSG(), _NATSORTVER(), _NATMSGVER()
|
|
- Added Harbour compiler tracing (i.e., debug output)
|
|
- Many changes, fixes, and enhancements to documentation
|
|
- Program added to extract documentation from source code and create NG,
|
|
HLP, OS2, IPF and TROFF output files
|
|
- Compile time expression optimizer
|
|
- Some preprocessor fixes
|
|
- Added ADS RDD
|
|
- Added TYPE() function
|
|
- MlCount() and MlPos() functions
|
|
- Get system completely finished
|
|
- Added HARBOURCMD/CLIPPERCMD environment variables
|
|
- Added support for #pragma directives
|
|
- Enhanced Getenv() function
|
|
- Added //BUILD app command line option
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.30 Alpha Build 30 (1999-09-30)
|
|
|
|
- RDD support
|
|
- Support for MEM files
|
|
- The debugger
|
|
- Support for BEGIN/END/RECOVER/BREAK statements
|
|
- The preprocessor supports changed order of keywords in xcommand/xtranslate
|
|
- Error handler supports retry/substitute operations
|
|
- Support for aliased expressions
|
|
- Support for FIELD variables
|
|
- Support for canceling the application by pressing Alt-C
|
|
- Enhanced ITEM API
|
|
- Support for internal command line options '//'
|
|
- Severe speed improvement
|
|
- Better Directory() compatibility
|
|
- Redirected output works now
|
|
- Even more Preprocessor compatibility
|
|
- Set HARBOUR= in environment to override Set CLIPPER= settings
|
|
- Rudimentary Unix keyboard support added
|
|
- Tone support added
|
|
- SET KEY support was added
|
|
- Extensive regression test suite added (RTL_TEST)
|
|
- Array handling fixed and made Clipper compatible
|
|
- Ragged array declaration and initialization support added
|
|
- FileSys API extensions, more C5.3 compatible functions added
|
|
- Compiler command line compatibility enhanced
|
|
- Internal errors made uniform
|
|
- Source code cleanup and formatting
|
|
- Many new functions, samples and bug fixes
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.29 Alpha Build 29 (1999-07-27)
|
|
|
|
- Support for these compilers:
|
|
C++ Builder
|
|
DJGPP for Dos/Windows
|
|
MacIntosh
|
|
BC 3.1, 4.0, 4.5, 5.2
|
|
GCC OS/2
|
|
GCC Win32
|
|
MS VC
|
|
GCC Linux / Unix
|
|
IBM C
|
|
Watcom C/C++ 10
|
|
- New INI file support
|
|
- Enhanced support for MEMVAR's
|
|
- Added support for PUBLIC, PRIVATE and PARAMETERS
|
|
- Added support for empty arguments in functions.
|
|
- Added colors support
|
|
- Added support for concatenation operator "-"
|
|
- Added support to generate runtime errors in functions
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.28 Alpha Build 28 (1999-07-18)
|
|
|
|
- Added support for MS Visual C++
|
|
- First support for Apple Macintosh
|
|
- Almost complete preprocessor
|
|
- Error handling improved
|
|
- Extend Library complete
|
|
- First version of OOPS syntax added
|
|
- MEMVAR support started
|
|
- Pre processor available as a run-time function
|
|
- Rich Text Format Class added
|
|
- Many Terminal functions created
|
|
- Many national modules added
|
|
- Many new functions
|
|
- Many bug fixes
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.27a Alpha Build 27a (1999-06-19)
|
|
|
|
- Corrected build numbers in Harbour.exe
|
|
- Corrected a little bug in HScript.prg
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.27 Alpha Build 27 (1999-06-18)
|
|
|
|
- Added new directory with GNU MAKE files for GCC on Linux
|
|
- Added support for Watcom C/C++ compiler
|
|
- Harbour compiles fine on Linux now
|
|
- Optional Strong Typed Variables
|
|
- New DosShell function for DOS, OS/2 & Windows
|
|
- First release of hScript added. Internet Scripting Samples!
|
|
- Integrated preprocessor into compiler
|
|
- Check on non used variables in codeblocks
|
|
- Extended syntax for AllTrim and RTrim
|
|
- Many resolved bugs
|
|
- Many new functions
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.26 Alpha Build 26 (1999-06-12)
|
|
|
|
- Check for non used declared variable
|
|
- Better support for different platforms and compilers.
|
|
- New Inifiles class
|
|
- Support for IBM C++ compiler for OS/2
|
|
- Harb26.Zip includes Runner.exe now
|
|
So NO NEED for any external software to run Harbour PRG's!
|
|
- Many resolved Bugs
|
|
- Many new functions
|
|
- New National language message files
|
|
- New TestBank. It compiles ALL Harbour samples
|
|
- <object>:<data> := <value> can now be used inside expressions (codeblocks)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.25 Alpha Build 25 (1999-06-05)
|
|
|
|
- Almost complete Clipper syntax
|
|
- Better makefiles
|
|
- gtApi included
|
|
- Preprocessor included
|
|
- Files* functions working
|
|
- Many fixes, enhancements and new functions
|
|
- HTML and CGI examples included
|
|
- Inheritance
|
|
- Even more test PRG's!
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.24 Alpha Build 24 (1999-06-03)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.23 Alpha Build 23 (1999-05-19)
|
|
|
|
- Harbour.exe for DOS/Windows is included now
|
|
- The Windows libs are also included (HBW.BAT to build Windows EXE's)
|
|
- HRB files! These files can be run with the Runner.exe (Source included)
|
|
- No need for a C compiler anymore to run Harbour source!
|
|
- New MAKE and BUILD files for IBM C++ 3.0 for OS/2
|
|
- Many fixes, Many enhancements (See ChangeLog in the Harbour directory)
|
|
- Added support for '-i' option (#include file search path)
|
|
- Even more test PRG's
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.21-2 Alpha Build 21-2 (1999-05-13)
|
|
|
|
- 32 bits OBJ's generation
|
|
- More Clipper language compatibility
|
|
- New object oriented features
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.20-2 Alpha Build 20-2 (1999-05-01)
|
|
|
|
- It is not required to name Main() as the starting function.
|
|
You may use any function name there
|
|
- Logical AND shortcutting
|
|
- New compiler /z to suppress shortcutting (see tests\working\and_or.prg)
|
|
- Memory unreleased blocks improved
|
|
- Many latest diffs implemented
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.18 Alpha Build 18 (1999-04-23)
|
|
|
|
- Statics support
|
|
- Classes creation: just a very very brief
|
|
- Most important changes are related to the Harbour object oriented
|
|
capabilities
|
|
- Dynamic symbol table implementation
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.17 Alpha Build 17 (1999-04-20)
|
|
|
|
- Multidimensional arrays support!!!
|
|
- Spitted files
|
|
- We have started the runtime library implementation (source\rtl)
|
|
- The harbour.lib gets built from the make file
|
|
- Dates support
|
|
- Dynamic stack is properly working
|
|
- Much improved extend system
|
|
- More tests for dates, strings
|
|
- Dates support including adding and subtracting!
|
|
- Variables by reference support
|
|
- Labeled C pcode output
|
|
- Many diffs implemented
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.16 Alpha Build 16 (1999-04-17)
|
|
|
|
- New project directories structure
|
|
- Added support for command line parameters
|
|
- Compiler /o options changed to /g
|
|
- /gc added (default option)
|
|
- Changes on types.h
|
|
- Extend system functions enhanced
|
|
- Do case support
|
|
- _POWER support on hvm
|
|
- _MODULUS support on hvm
|
|
- Latest proposed diffs implemented
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.15 Alpha Build 15 (1999-04-14)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.14 Alpha Build 14 (1999-04-13)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.13 Alpha Build 13 (1999-04-10)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.12 Alpha Build 12 (1999-08-08)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.11 Alpha Build 11 (1999-04-07)
|
|
|
|
----------------------------------------------------------------------
|
|
Version 0.10 Alpha Build 10 (1999-04-03)
|
|
|
|
----------------------------------------------------------------------
|
|
OpenClipper #9 Alpha build 9 (1999-04-01)
|
|
|
|
- PARAMETERS support
|
|
- BEGIN SEQUENCE support
|
|
- #include support (it opens the include files and parse them)
|
|
- #define support for both identifiers and expressions
|
|
(though expressions are not translated yet)
|
|
- #ifdef and #ifndef support
|
|
- while loops without statements support
|
|
- Bison 1.24 is used now instead of byacc as byacc were returning
|
|
a 'Out of space' error (parser execution is faster now!)
|
|
- We are linking using huge memory model now cause DGROUP was already
|
|
over 64Kb
|
|
|
|
----------------------------------------------------------------------
|
|
OpenClipper #8 Alpha build 8 (1999-03-29)
|
|
|
|
----------------------------------------------------------------------
|
|
OpenClipper #7 Alpha build 7 (1999-03-26)
|
|
|
|
----------------------------------------------------------------------
|
|
OpenClipper #6 Alpha build 6 (1999-03-25)
|
|
|
|
----------------------------------------------------------------------
|