From 4b5017e7e2120c7d4d5df96bcb0d038290b19a6b Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Fri, 22 Dec 2006 11:25:28 +0000 Subject: [PATCH] 2006-12-22 11:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/rdd_ads/adsfunc.c * do not use hb_param( pItem, HB_IT_BYREF ) but ISBYREF() macro * harbour/include/hbdefs.h * formatting * harbour/include/hbexprb.c ! fixed code generated for logical expressions when shortcutting is enabled to be Clipper compatible * harbour/source/compiler/cmdcheck.c ! added missing break in -z compiler switch decoding * harbour/source/compiler/hbfix.c % added optimizations for code generated for logical expressions, it strips a chain of HB_P_DUPLICATE -> HB_P_JUMP[TRUFALES] -> HB_P_DUPLICATE -> HB_P_JUMP[TRUFALES] -> ... In fact it should not be done here but because we do not have any metacode level where such optimizations should be done and PCODE is generated online then it will have to be here. Maybe in the future we will add metacode. * harbour/source/rdd/dbcmd.c * make "M" alias Clipper compatible. After some thoughts I decided that in some cases it can be usable so now "M" will set WA number to 65535 like in Clipper. * harbour/source/rdd/dbf1.c * allow to open VFP DBFs with _NullFlags system command * harbour/source/rdd/delim1.c * harbour/source/rdd/sdf1.c ! updated field size calculation for some some extended types. * harbour/source/rdd/workarea.c * generate RT error when CREATEFIELD() method does not accept some parameters to avoid silent DBCREATE() failing. * harbour/source/vm/macro.c * removed hb_compMemvarCheck() - this function was not dooing anything - only slows the TYPE() by calling hb_dynsymFind() one or two times. + added TODO note: memvars create by TYPE() have PUBLIC scope in Clipper. Clipper also always tries to evaluate valid expressions inside TYPE even if the contain UDF. UDF only stops evaluation so: TYPE( "(val:=1) + f() + (val2:=2)" ) creates in clipper public variable VAL but not VAL2. --- harbour/source/compiler/harbour.c | 1 - 1 file changed, 1 deletion(-) diff --git a/harbour/source/compiler/harbour.c b/harbour/source/compiler/harbour.c index b464824c0e..1310c0a5e5 100644 --- a/harbour/source/compiler/harbour.c +++ b/harbour/source/compiler/harbour.c @@ -1926,7 +1926,6 @@ void hb_compAnnounce( HB_COMP_DECL, char * szFunName ) pFunc = hb_compFunctionFind( HB_COMP_PARAM, szFunName ); if( pFunc ) - { /* there is a function/procedure defined already - ANNOUNCEd procedure * have to be a public symbol - check if existing symbol is public