* harbour/source/lang/msgcs852.c
* harbour/source/lang/msgcsiso.c
* harbour/source/lang/msgcskam.c
* harbour/source/lang/msgcswin.c
* typo fixed (Vojtech Obrdlik <vobrdlik centrum.cz>)
* harbour/include/hbapicdp.h
* harbour/source/codepage/Makefile
+ harbour/source/codepage/cpcs852.c
+ harbour/source/codepage/cpcsiso.c
+ harbour/source/codepage/cpcskam.c
+ harbour/source/codepage/cpcswin.c
+ harbour/source/codepage/uckam.c
* harbour/doc/en/lang.txt
* harbour/common.mak
+ added czech codepage support (Vojtech Obrdlik <vobrdlik centrum.cz>)
Vojtech many thanks.
We will have to fix our CDP code to work well with characters
with the same wight - now sorting with such codepages does not
work correctly, f.e. in CSISO:
CHR(65)+CHR(204) > CHR(65)+CHR(201)
but:
CHR(65)+CHR(201) >= CHR(65)+CHR(204)
as you can see comparison depends on string order:
s1 > s2 but not s2 < s1
It means that such codepages cannot be used in any sorting
systems like indexes until we will not fix internal CPD logic.
Alexander can you look at it?
If not then please inform me and I'll work on it in some spare
time.
* harbour/source/rtl/do.c
* minor RTE message simplification
* harbour/source/rtl/gtos2/gtos2.c
* casting
* harbour/source/vm/dynsym.c
+ added __DYNSN2SYM( <cName> ) -> symbolItem
* harbour/include/hbapi.h
* harbour/source/vm/arrays.c
+ added supercast and superoffset members to hb_struArray structure
* harbour/source/vm/classes.c
* harbour/source/rtl/tclass.prg
! fixed calculation of instance area offsets
! fixed accessing instance variables with super casting
+ added selfclass casting
+ added support for sending 'exec' and 'name' messages to
symbol items, f.e.:
funcSym := (@funcName())
? "Exacuting:", funcSym:name
funcSym:exec( param1, param2, ... )
* changed __CLASSNAME() to be Clipper compatible
* changed __CLSINST()/__CLASSINSTANCE() now accepts as third paramter
function name - Clipper compatible
! fixed GPF trap in __OBJGETCLSNAME() when executed with wrong parameter
* some other fixes and small speed improvement
* harbour/doc/en/hb_vm.txt
* harbour/doc/es/hb_vm.txt
* harbour/include/hbvm.h
* harbour/contrib/hgf/gtk/mainlgtk.c
* harbour/source/compiler/gencc.c
* harbour/source/rtl/errorapi.c
* harbour/source/rtl/gtalleg/gtalleg.c
* harbour/source/vm/maindll.c
* harbour/source/vm/mainpm.c
* harbour/source/vm/mainstd.c
* harbour/source/vm/mainwin.c
* harbour/source/vm/hvm.c
* changed hb_vmQuit() to not execute EXIT() but return s_nErrorLevel
! execute EXIT procedures in hb_vmRequestQuit() - Clipper compatible
behavior
* do not exit immediately in RT errors but return from all executed
functions - some internal parts of RDD code will have to be fixed.
* harbour/source/vm/proc.c
! fixed procname for codeblocks. Seems that we are not fully Clipper
compatible yet. I'll look at it closer soon.
* harbour/TODO
+ added new item: Clean RDD code to be safe for return from RT errors
assigned to me
* include/hbcomp.h
* include/hberrors.h
* include/hbexpra.c
* include/hbexprb.c
* include/hbexprc.c
* include/hbmacro.h
* include/hbpcode.h
* include/hbpp.h
* include/hbxvm.h
* source/common/expropt1.c
* source/compiler/cmdcheck.c
* source/compiler/expropta.c
* source/compiler/exproptb.c
* source/compiler/exproptc.c
* source/compiler/genc.c
* source/compiler/gencc.c
* source/compiler/gencli.c
* source/compiler/genhrb.c
* source/compiler/genjava.c
* source/compiler/genobj32.c
* source/compiler/harbour.c
* source/compiler/harbour.l
* source/compiler/harbour.y
* source/compiler/hbdead.c
* source/compiler/hbfix.c
* source/compiler/hbfunchk.c
* source/compiler/hbgenerr.c
* source/compiler/hblbl.c
* source/compiler/hbpcode.c
* source/compiler/hbstripl.c
* source/macro/macroa.c
* source/macro/macrob.c
* source/macro/macroc.c
* source/vm/hvm.c
* source/vm/macro.c
* fixed compilation of code that uses '@' pass by
reference. The following syntax is no longer supported:
var := IIF( .T., @var, var )
however you can still use the following:
funcall( IIF( bPassbyRef, @someVar, someVar ) )
+added support for the following statement:
WITH OBJECT <objexpression>
...
END
inside this statement you can use simplified form of sending
messages to the object specified by <objexpression>
:message( ) instead objexpression:message()
:property instead objexpression:property
The runtime error will be generated at the time of message
sending (or property access/assign) if <objexpression>
is not a value of type object.
You can use the reserved property:
:__withobject
to access/assign the controlling object.
*fixed support for command line response file (@file.clp)
to be compatible with Clipper (Clipper genertes a single
obj file)
*fixed memory leaks when there is a fatal error in autoopened
module (using DO ... statement)
*implicit startup functions are removed from the list of
functions before generation of output code
* source/pp/ppcomp.c
* source/pp/pplib.c
* source/pp/ppcore.c
* redefinition of #define no longer causes a memory leak
* fixed repeatable optional clauses
#xcommand SET <var1> [, <varN>] WITH <val> =>
<var1>:=<val>[; <varN>:=<val>]
* fixed compilation of optional clauses (when used in different
order then declared) -this fixes the following long
waiting bug:
#command MYCOMMAND [<mylist,...>] [MYCLAUSE <myval>] => ;
MyFunction( {<mylist>} [, <myval>] )
MYCOMMAND MYCLAUSE 321 "HELLO"
* fixed restricted macro match marker <x:&>
* tests/Makefile
- tests/pretest.prg
+ utils/hbpptest
+ utils/hbpptest/Makefile
+ utils/hbpptest/pretest.prg
* moved file 'pretest.prg' from tests to separate directory
to make easier validation of the preprocessor
* TODO
* added note to fix hb_objGetMethod() so it will not generate
error if there is no method
* doc/en/clipper.txt
* added documentation for WITH OBJECT usage
* include/hbpp.h
+ added 'extern' declaration
* source/compiler/hbusage.c
+ added short usage info abour /r= switch
* doc/pragma.txt
* doc/en/compiler.txt
+ added documentation about new pragmas and new /r= switch
+ 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.
* 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 <nHandle> 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