Commit Graph

2822 Commits

Author SHA1 Message Date
Maurilio Longo
e2dec8ecae 20000512-13:31 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-12 11:35:33 +00:00
Maurilio Longo
3d1d1d3875 20000510-22:01 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-10 20:07:30 +00:00
Ron Pinkas
30cc98a20d 20000510-03:00 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
    + Added new structures COMCLASS and COMMETHOD
    + Added new element pClass to structure VAR
    + Added:
	extern PCOMCLASS hb_compClassAdd( char * );
	extern PCOMCLASS hb_compClassFind( char * );
	extern PCOMMETHOD hb_compMethodAdd( PCOMCLASS pClass, char * );
	extern PCOMMETHOD hb_compMethodFind( PCOMCLASS pClass, char * );

  * source/compiler/harbour.c
    + Added:
	PCOMCLASS hb_compClassAdd( char * );
	PCOMCLASS hb_compClassFind( char * );
	PCOMMETHOD hb_compMethodAdd( PCOMCLASS pClass, char * );
	PCOMMETHOD hb_compMethodFind( PCOMCLASS pClass, char * );
    * Modified hb_compVariableAdd() to process params of declared class methods.

  * source/compiler/harbour.l
    + Added tokens CLASSMETHOD CLASSDATA and FROMCLASS

  * source/compiler/harbour.y
    + Added support for class declaration syntax:
      DECLARE CLASS ClassName HAS Method MethodName( ... ) As ... HAS Data PropertyName ...
    + Added support for declaration of Object of a sdeclared class sysntax:
      DECLARE oObjectVar AS Object FROM ClassName

  * source/compiler/hbpcode.c
    + Started support for object methods and properties type checking.

  * tests/testwarn.prg
    + Added code to demonstrate declarion of classes and objects of a declared class.
2000-05-10 10:13:16 +00:00
Paul Tucker
d0fd162828 Added casts 2000-05-10 06:47:38 +00:00
David G. Holm
9138e033a3 See ChangeLog entry 2000-05-09 19:20 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-09 23:24:42 +00:00
Maurilio Longo
e820d6adeb 20000509-22:27 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-09 20:32:51 +00:00
Ron Pinkas
cca893bb9d 20000509-00:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     ! Corrcted HB_P_NOT and minor fixes.
2000-05-09 07:16:21 +00:00
Ron Pinkas
d3cba77156 20000508-22:50 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     - Removed un used token DECLARE_

   * source/compiler/harbour.y
     ! Fixed warning about conflict
     ! Verified all calls to hb_compVariableAdd() to use hb_comp_cVarType (and VT_OFFSET_* constants) as 2nd parameter
     + Added rules to support syntax of declartion of variable by reference parameter.

   * include/hbcomp.h
     + Added :
	#define VT_OFFSET_BYREF             60
	#define VT_OFFSET_VARIANT           90
	#define VT_OFFSET_OPTIONAL          90

   * source/compiler/harbour.c
     * Minor cleanup in hb_compVariableAdd()

   * source/compiler/hbpcode.c
     * Modified hb_compStrongType() to use VT_OFFSET_* constants.

   * source/compiler/hbgenerr.c
     * Changed "number" to "#" in HB_COMP_WARN_PARAM_TYPE message.

   * tests/testwarn.prg
     + Added code to demonstrate new "Declared Refernced Paramater" syntax:
         DECLARE FRead( nHandle As Num, @cBufferVar As Char, nBytes As Num ) AS Num
2000-05-09 06:08:45 +00:00
Luiz Rafael Culik
7a8c4b7e5c see changelog 2000-05-09 02:02:55 +00:00
Luiz Rafael Culik
257b644e41 See changelog 20000508 22:50 gmt -3 2000-05-09 01:50:45 +00:00
Viktor Szakats
3b1d2354c0 20000509-00:35 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-08 22:32:03 +00:00
Ron Pinkas
123e544346 20000508-00:20 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added rules so that "optional" won't conflict with identifiers named optional.
2000-05-08 07:20:50 +00:00
Ron Pinkas
0d504bfd5c 20000507-21:20 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added token "optional"

   * source/compiler/harbour.y
     + Added token "optional", DecParam, DecParamList, OptParams.
     + Added support for optional parameters syntax in declared functions.

   * source/compiler/harbour.c
     + Added logic in hb_compVariableAdd() to deal with optional parameters of declared functions.

   * source/compiler/hbpcode.c
     + Added logic in hb_compStrongType() to deal with optional parameters of declared functions.

   * tests/testwarn.prg
     + Added code to demonstrate usage and warnings of optional parameters in declared functions.
2000-05-08 04:28:21 +00:00
Patrick Mast
da551faae0 Added -? and -h option for the compiler. 2000-05-07 21:35:26 +00:00
Ron Pinkas
8d68c4da51 20000507-13:35 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hberrors.h
     + Added : #define HB_COMP_WARN_VAL_NOT_USED               20

   * source/compiler/harbour.c
     + Added logic to hb_compOptimizeFrames() to warn about invalid statics usage.

   * source/compiler/hbgenerr.c
     + Added: "3Value of Variable \'%s\' never used"

   * source/compiler/hbpcode.c
     * Enhanced support for statics

   * tests/testwarn.prg
     + Added more code to demonstrate more warnings.
2000-05-07 20:36:33 +00:00
Ron Pinkas
3e7718e76e 20000507-05:20 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbpcomp.c
     + Added pPrivates to structure FUNCTION.

   * source/compiler/harbour.c
     + Added logic to maintain linked list pPrivates of pFunc.

   * source/compiler/harbour.y
     + Added support for MEMVAR AS ... syntax.

   * source/compiler/hbpcode.c
     + Added support for FIELD AS ... and MEMVAR AS both local and global.
     ! More refinments

   * tests/testwarn.prg
     + Added code to demonstrate "Adaptive Type Checking".
2000-05-07 12:27:18 +00:00
Ryszard Glab
902545e657 ChangeLog 20000507-14:15 GMT+1 2000-05-07 11:57:32 +00:00
Viktor Szakats
ea269fabd5 20000507-09:40 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-07 07:40:13 +00:00
Ron Pinkas
83015ce56c 20000506-22:45 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     + Added #define VS_NONE 0

   * source/compiler/harbour.c
     ! Fixed bug in hb_compVariableAdd() was never adding new var to pFunc->pMemvars because
       hb_comp_iVarScope was tested with == rather & VS_MEMVAR

   * source/compiler/harbour.y
     + Added hb_comp_iVarScope = VS_NONE to reset it after PRIVATE PUBLIC and PARAMETERS statements.

   * source/compiler/hbpcode.c
     + Added logic to reset type of privates (need to check publics) after calls to functions or procedures which might affect them.
     ! Many fixes and consolodiations
2000-05-07 05:55:07 +00:00
Ron Pinkas
6cc426a0b8 20000506-16:35 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     + Added logic to hb_compStrongType() to support object methods and properties.
     * Enhanced logic of array checks.

   * include/hberrors.h
     ! Added #define HB_COMP_WARN_ARRAY_ASSIGN_SUSPECT

   * source/compiler/hbgenerr.c
     * Added : 4Suspicious type in assignment to declared array element expected: \'%s\'"
2000-05-06 23:39:13 +00:00
Luiz Rafael Culik
2b1b8bf773 See changelog 20000606 19:1 gmt -3 2000-05-06 22:10:13 +00:00
Ron Pinkas
81ac286072 20000504-22:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     + Added logic to allow PLUS an MINUS to accept any type as long as same.
     ! Fixed compiler warning about pVar
     * Minor optimizations
2000-05-06 19:18:02 +00:00
Viktor Szakats
f291e04f8b 20000506-17:46 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-06 15:43:22 +00:00
Antonio Linares
3aa92d7d36 20000505-19:56 GMT+1 2000-05-05 17:55:43 +00:00
Antonio Linares
009b1e1080 *** empty log message *** 2000-05-05 17:36:30 +00:00
Antonio Linares
bf97048440 20000505-19:23 GMT+1 2000-05-05 17:22:24 +00:00
Antonio Linares
35fd44dad5 20000505-19:21 GMT+1 2000-05-05 17:20:24 +00:00
Ryszard Glab
bb1ba3c1d1 ChangeLog 20000505-19:15 GMT+1 2000-05-05 17:09:46 +00:00
Antonio Linares
cc20b69b05 20000505-18:05 GMT+1 2000-05-05 16:04:15 +00:00
Ryszard Glab
44f903550e ChangeLog 20000505-17:53 2000-05-05 15:47:37 +00:00
Maurilio Longo
e15730ef43 20000505-10:47 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-05 08:51:09 +00:00
Ron Pinkas
a6f92b5008 20000504-23:00 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/cmdcheck.c
     + Added -w4 option for the compiler.
2000-05-05 06:02:37 +00:00
Ron Pinkas
2583f6096d 20000504-22:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.c
     - Removed static qualifier from hb_compVariableGetPos() so it can be called from hb_compStrongType()

   * source/compiler/hbpcode.c
     + Added logic to hb_compStrongType() to allow assigment of NIL to any type variable.
     + Added "Adaptive Type Checking" to control type mismatch in undeclared variables.

   * include/hberrors.h
     ! Added #define HB_COMP_ARRAY_ASSIGN_TYPE to HB_COMP_WARN_ARRAY_ASSIGN_TYPE

   * source/compiler/hbgenerr.c
     * Added : Moved "Suspecious ..." to level w4

   * tests/testwarn.prg
     + Added code to demonstrate "Adaptive Type Checking".
2000-05-05 05:43:21 +00:00
Viktor Szakats
30511d52a8 20000505-02:03 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-05 00:04:35 +00:00
Maurilio Longo
20f9dd010b 20000505-00:27 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-04 22:31:14 +00:00
David G. Holm
91127d11b9 See ChangeLog entry 2000-05-04 18:00 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-04 21:11:05 +00:00
Ryszard Glab
afd8141942 ChangeLog 20000504-17:10 GMT+1 2000-05-04 15:02:17 +00:00
Ron Pinkas
7b648ebc7e 20000504-04:05 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     ! Fixed GPF when Array of 0 elements created.
2000-05-04 11:05:09 +00:00
Ron Pinkas
86e2384686 20000504-03:10 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added:
	"as bool array"      { return AS_LOGICAL_ARRAY; }
	"as boolean array"   { return AS_LOGICAL_ARRAY; }
	"as var"             { return AS_VARIANT; }
	"as variant"         { return AS_VARIANT; }
	"as num array"       { return AS_NUMERIC_ARRAY; }
	"as numeric array"   { return AS_NUMERIC_ARRAY; }
	"as char array"      { return AS_CHARACTER_ARRAY; }
	"as character array" { return AS_CHARACTER_ARRAY; }
	"as string array"    { return AS_CHARACTER_ARRAY; }
	"as logical array"   { return AS_LOGICAL_ARRAY; }
	"as bool array"      { return AS_LOGICAL_ARRAY; }
	"as boolean array"   { return AS_LOGICAL_ARRAY; }
	"as date array"      { return AS_DATE_ARRAY; }
	"as array array"     { return AS_ARRAY_ARRAY; }
	"as block array"     { return AS_BLOCK_ARRAY; }
	"as object array"    { return AS_OBJECT_ARRAY; }
	"as var array"       { return AS_VARIANT; }
	"as variant array"   { return AS_VARIANT; }

   * source/compiler/harbour.y
     + Added AsArray
     + Added : %token AS_NUMERIC_ARRAY AS_CHARACTER_ARRAY AS_LOGICAL_ARRAY AS_DATE_ARRAY AS_ARRAY_ARRAY AS_BLOCK_ARRAY AS_OBJECT_ARRAY AS_VARIANT_ARRAY
     + Added rules to support declarion of array elements type

   * source/compiler/harbour.c
     ! Minor fix to hb_compVariableGetPos() to signify var usage if warning level lower than 3

   * source/compiler/hbpcode.c
     + Added logic to hb_compStrongType() to support type checking of array elements declared type.

   * include/hberrors.h
     + Added #define HB_COMP_ARRAY_ASSIGN_TYPE

   * source/compiler/hbgenerr.c
     + Added : "3Incompatible type in assignment to declared array element expected: \'%s\'"

   * tests/testwarn.prg
     + Added code to demonstrate more warnings.

   * contrib/hbclip/hbclip.ch
     + Added additional strong typing compatibility translations
2000-05-04 10:26:57 +00:00
Chen Kedem
f6a27fcc97 20000504-12:07 GMT+3 Chen Kedem <niki@actcom.co.il> 2000-05-04 09:08:35 +00:00
Viktor Szakats
bba60d9c11 20000504-09:12 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-04 07:10:29 +00:00
Ron Pinkas
eec5c93ec1 20000503-21:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     + Added:
	#define VU_NOT_USED    0
	#define VU_INITIALIZED 1
	#define VU_USED        2

   * source/compiler/harbour.c
      * Modified refrences to pVar->iUsed to use new VU_* constants.

   * source/compiler/hbpcode.c
     * Enhanced hb_compStrongType() to check and set pVar->iUsed with new VU_*constants.
2000-05-04 04:35:54 +00:00
Ron Pinkas
f6cc8be651 20000503-19:25 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.c
     * Corrcetd pVars->iUsed = 1 to pVars->iUsed |= 1 in hb_compVariableGetPos() so it won't override -1 value from StrongType()
2000-05-04 02:27:03 +00:00
Viktor Szakats
ba32c1fa9d 20000503-22:43 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-03 20:39:41 +00:00
Ron Pinkas
7da8b5fc2a 20000503-01:45 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hberrors.h
     + Added:
        #define HB_COMP_NOT_INITIALIZED

   * source/compiler/hbgenerr.c
     + Added: "3Variable \'%s\' used but never initialized"

   * source/compiler/hbpcode.c
     * Enhanced hb_compStrongType() to warn against un-initialized varaiable usage.
2000-05-03 08:45:45 +00:00
Ron Pinkas
78a4a8e84f 20000503-01:00 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     * Fixed hb_compStrongType() to difrentiate between a MEMVAR and a DECLARED FUNCTION with the same name.
     + Added support for HB_P_ARRAYPUSH

   * source/compiler/hbgenerr.c
     * Minor correction to "Incompatibe return type"

   * tests/testwarn.prg
     + Added code to demonstrate more warnings.
2000-05-03 08:00:23 +00:00
Ron Pinkas
d4b1d4c1fd 20000502-23:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     - Removed members cParamTypes and iParamCount from COMSYMBOL
     + Added member USHORT iStackSize to FUNCTION structure
     * Modified member pStack of FUNCTION to not pre allocate any memory.
     + Added new structure COMDECLARED
     + Added: extern PCOMDECLARED hb_compDeclaredAdd( char * ) and extern PCOMDECLARED hb_compDeclaredFind( char * );
     + Adede: extern PCOMDECLARED  hb_comp_pFirstDeclared and extern PCOMDECLARED  hb_comp_pLastDeclared

   * include/hberrors.h
     + Added:
        #define HB_COMP_DUP_DECLARATION                 17
        #define HB_COMP_DECLARATION_CONFLICT            18

   * source/compiler/genc.c
     * Modified hb_compGenCCode() to free the Declared Function linked list.

   * source/compiler/harbour.c
     + Added: PCOMDECLARED hb_compDeclaredAdd( char * ) and PCOMDECLARED hb_compDeclaredFind( char * );
     + Adede: PCOMDECLARED  hb_comp_pFirstDeclared and PCOMDECLARED  hb_comp_pLastDeclared

   * source/compiler/harbour.y
     * Modified parsing of DECLARE FUNCTION to use new PCOMDECLARED rather than PCOMSYMBOL

   * source/compiler/hbgenerr.c
     + Added:
       "3Duplicate Declaration of Function %s"
       "3Function \'%s\' conflicting with its declaration"

   * source/compiler/hbpcode.c
     * Modifief hb_compStrongType() to utilize PCOMDECLARED rather than PCOMSYMBOL
     * Modifief hb_compStrongType() to increase the pFunc->pStack as needed.

   * tests/testwarn.prg
     + Added code to demonstrate more warnings.
2000-05-03 06:32:02 +00:00
Viktor Szakats
8d9e60b1b6 20000503-01:13 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-02 23:09:51 +00:00
Viktor Szakats
bbd8b2922e 20000503-00:39 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-02 22:37:24 +00:00
Maurilio Longo
193c2225ad 20000503-00:01 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-02 22:07:12 +00:00