Commit Graph

714 Commits

Author SHA1 Message Date
Ron Pinkas
758e044984 Added proposed new Lexer files harbour.slx and harbourl.c 2000-07-06 06:51:57 +00:00
Alexander S.Kresin
3dfd022b33 2000-07-24 13:59 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2000-07-04 09:59:33 +00:00
Ryszard Glab
38411220a9 ChangeLog 2000-07-03 11:40 UTC+0100 2000-07-03 09:35:57 +00:00
Ryszard Glab
df9fab8ad8 ChangeLog 2000-06-27 11:10 UTC+0100 2000-06-28 09:03:55 +00:00
Ryszard Glab
94eb133666 ChangeLog 2000-06-26 19:20 UTC+0100 2000-06-27 17:15:56 +00:00
Viktor Szakats
af1cd893af 2000-06-25 14:25 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-25 12:29:19 +00:00
Ron Pinkas
2bdcf6417e 2000-06-24 11:42 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbclass.ch
     - Uncommented the VO #xtranslate as they do work correctly.

   * source/pp/pplib.c
     - Removed int hb_comp_iIncLine

   * include/hbcomp.h
     - Removed int hb_comp_iIncLine
     + Added int hb_comp_iCompiled
     + Added char*  hb_comp_szFile
     + Added BOOL  hb_comp_bError

   * source/compiler/harbour.c
     ! Fixed Compile Time Line Numbers
     ! Fixed Run Time Line Numbers

   * source/compiler/harbour.l
     ! Rewrote rules for STRING1 STRING2 STRING3 INDEX, were severly broken with regard to unterminated support.
       /* When working on errors, I founf major problems, with unterminated Array Index and Unterminated Strings
          I'm surprised no one reported.  This mass was a nightmere to fix. it seems to be working great now. */

   * source/compiler/harbour.y
     ! Many fixes to support correct line numbers.

   * source/compiler/hbgenerr.c
     ! Fixed Error System to never report more than 1 error per source line.

   * source/pp/ppcomp.c
     - Removed code for hb_comp_iIncLine

   * source/pp/ppcore.c
     * Minor formating.
2000-06-24 19:06:52 +00:00
Ryszard Glab
5e6a63d3c7 ChangeLog 2000-06-24 20:10 UTC+0100 2000-06-24 18:02:43 +00:00
Jean-Francois Lefebvre
0093f8b62e 2000-06-23 01:31 UTC+0200 JFL & RAC <jflb@mafact.com> 2000-06-22 23:28:27 +00:00
Ron Pinkas
baf6469d63 2000-06-22 03:30 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbclass.ch
     ! Uncommented  #xtranslate that was not pre-processing correctly, before recent fixes to ppcore.c and now works correctly.

   * source/compiler/harbour.c
     ! Fixed hb_compLinePush() to generate correct Run-Time Line Numbers.

   * source/pp/ppcomp.c
     - Removed one // comment.

   * source/pp/ppcore.c
     * Increased MAX_EXP to 2048 as requested by Brian Hays.
2000-06-22 10:38:30 +00:00
Viktor Szakats
99cf7bb5ad 2000-06-22 03:23 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-22 01:19:53 +00:00
Viktor Szakats
ba531f861f 20000322-16:33 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-06-21 12:19:00 +00:00
Antonio Linares
30c52f5d86 *** empty log message *** 2000-06-20 13:23:26 +00:00
Antonio Linares
6baa26fe45 *** empty log message *** 2000-06-20 08:35:35 +00:00
Viktor Szakats
1479859068 2000-06-19 10:11 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-19 08:12:44 +00:00
April White
b45f9d69bd 2000-06-17 20:34 UTC+0500 April White <awhite@user.rose.com>
* include/hbapi.h
     * forgot an end of comment tag
2000-06-18 19:42:05 +00:00
April White
016acbc883 2000-06-17 19:43 UTC+0500 April White <awhite@user.rose.com>
* include/hbapi.h
   * include/hbapifs.h
     + added descriptive comments, from source, to declarations of
       multiple api calls

   * rtl/trim.c
     * hb_strRTrimLen - corrected descriptive comment
       was "returns szText and the new length in lLen"
       now "return length of szText ignoring trailing white space
            (or true spaces)"
2000-06-18 18:57:16 +00:00
Ryszard Glab
ee19f4b1d5 ChangeLog 2000-06-18 15:20 UTC+0100 2000-06-18 13:20:51 +00:00
April White
b271952322 *** empty log message *** 2000-06-17 18:21:48 +00:00
Viktor Szakats
a1374c507f 2000-06-16 13:37 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-16 11:43:12 +00:00
Ryszard Glab
aae392a7ef ChangeLog 2000-06-13 19:55 UTC+0100 2000-06-13 17:51:13 +00:00
Ron Pinkas
4b20bace29 2000-06-11 21:30 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     * Enclosed declarations of functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE

   source/compiler/harbour.y
     * Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
     * Changed rules for DO ... to add name of module to hb_comp_pAutoOpen linked list.
     + Added hb_compAutoOpen() - Parses the needed externals when -m not specified
     - Defed out hb_compYACCMAIN() (#if 0) - no longer needed, moved logic into hb_compCompile() and hb_compAutoOpen()

   source/compiler/harbour.l
     + Added #define YY_USER_ACTION ... to fix Flex problem with ^ (BOL RegExp)
     * Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE

   source/compiler/harbour.c
     * Enclosed functions to support in-line nested compilation within #ifdef HB_NESTED_COMPILE
     * Modified hb_compCompile() to support future in-line nested compilation, and defed it out.
     * Changed hb_compCompile() to call hb_compAutoOpen() for modules called in DO ... that are not defined in main prg.
     ! Completed -m support, by default directives in external opened modules will be avialable to subsequent externals.
       this feature is defed out if strict compatibilty ise selected.
2000-06-12 04:50:50 +00:00
Ron Pinkas
f4a4d1f980 2000-06-07 22:50 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbpp.h
  * source/compiler/harbour.c
  * source/pp/ppcore.c
    * Modified hb_pp_SetRules() to receive 2nd parameter BOOL hb_comp_bQuiet, since ppcore is part of PP.lib which is linked
      into HBRUN.exe which does not include harbour.c where hb_comp_bQuiet is defined.

  * source/compiler/harbour.l
    ! Fixed parse error on IF [...]

  * source/vm/classes.c
    Posted patch provided by JF

  * source/rtl/tobject.prg
    Posted missing file provided by JF
2000-06-09 06:59:56 +00:00
Ron Pinkas
e5f03d9691 2000-06-05 19:50 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* source/pp/ppcore.c
     * Changed hb_pp_SetRules() to only always default to .CH extension, if file name supplied without extension.
     ! Converted some printf() messages to standard warnnings and errors.

   * include/hberrors.h
     + Added:
		#define HB_PP_ERR_CANNOT_OPEN_RULES             15
		#define HB_COMP_ERR_BAD_RULES_FILE_NAME         16

		#define HB_PP_WARN_NO_DIRECTIVES                2
2000-06-08 04:45:13 +00:00
Jean-Francois Lefebvre
17d0cd1fb7 see 2000-06-07 22:42 UTC+0200 JFl&RaC <jfl@mafact.com>,<rac@mafact.com>
see 2000-06-07 22:42 UTC+0200 JFl&RaC <jfl@mafact.com>,<rac@mafact.com>
see 2000-06-07 22:42 UTC+0200 JFl&RaC <jfl@mafact.com>,<rac@mafact.com>
2000-06-07 20:53:08 +00:00
Ryszard Glab
746484a766 ChangeLog 2000-06-07 16:50 UTC+0100 2000-06-07 14:48:26 +00:00
Ron Pinkas
31f151b6ae 2000-06-06 20:10 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/cmdcheck.c
      + Implemented support for -m

    * include/hbcomp.h
      + Added structure _HARBVARS to hold Harbour Session Variables
      + Added structure +AUTOOPEN to hold names of external modules already compiled.

    * source/compiler/harbour.c
      + Moved the parsing/compiling logic into new hb_compCompile()
      + Added:
		static void hb_compAutoOpenAdd( char * szName );
		static BOOL hb_compAutoOpenFind( char * szName );
		static void hb_compSaveVars( PHARBVARS, int );
		static void hb_compRestoreVars( PHARBVARS, int );

    * source/compiler/harbour.l
      + Added:
		void * hb_compGet_YY_CURRENT_BUFFER()
		void hb_compSet_YY_CURRENT_BUFFER( void * pBuffer )
		int hb_compGet_yy_init( void )
		void hb_compSet_yy_init( int i )
		int hb_compGet_yy_start( void )
		void hb_compSet_yy_start( int i )
		int hb_compGet_yy_did_buffer_switch_on_eof( void )
		void hb_compSet_yy_did_buffer_switch_on_eof( int i )

     * source/compiler/harbour.y
       + Added logic to call hb_compCompile() when DO ... or DO ... WITH
       + Added:
		void * hb_compGet_pLoops( void )
		void hb_compSet_pLoops( void * pLoops )
		void * hb_compGet_rtvars( void )
		void hb_compSet_rtvars( void * rtvars )

      *	source/compiler/hbusage.c
	+ Added display of -m compiler switch

Please note:

1. Implementation is practicaly completed, but there is one known issue to be resolved: Once we open and compile
   an external module, the very next prg line in the parent prg is not processed, I would love to get some assistance
   with this - Ryszard, Antonio, Victor, Paul? as I am seriously limited with time over this week.
   It seems I am not saving one of Bison/Flex vars, so my restore of the previous session is not complete :-(

2. Clipper seem to have a bug, on the following code:
   DO WHILE WITH ...
   Clipper will attempt to compile external "WITH.PRG" instead of "WHILE.PRG", can any one advise if I am missing something here...
   In our implementation the above line will attemp to compile "WHILE.PRG"
2000-06-07 03:47:47 +00:00
Antonio Linares
87ef7ca7fc 20000604-13:53 GMT+1 alinares 2000-06-04 11:53:02 +00:00
Ron Pinkas
a3a61fd11d 2000-06-04 03:05 UTC-0800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     + Added: extern char *        hb_pp_STD_CH;

   * include/hbpp.h
     + Added: extern void hb_pp_SetRules( BOOL (*hb_compInclude)(char *, PATHNAMES * ) );

   * source/compiler/hbusage.c
   * source/compiler/harbour.c
   * source/compiler/cmdcheck.c
     + Added support for -u[FileName]
     - Removed TODO for -u

   * source/pp/ppcomp.c
     + Added hb_pp_ReadRules() - Logic to process directives from user supplied command defs.

   * source/pp/ppcore.c
     + Added hb_pp_SetRules() - Logic to use predefined rules, none, or user defined.

   * source/pp/pptable.c
     + Added hb_pp_Table() - Moved predefined rules into this function, to allow for conditional use.
2000-06-04 10:12:52 +00:00
Viktor Szakats
f85f1fa13c 2000-06-03 13:36 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-03 11:33:06 +00:00
Viktor Szakats
4665c518e9 2000-06-03 01:13 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-03 07:57:02 +00:00
Viktor Szakats
d13e8ab76f 2000-06-02 02:54 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-02 01:34:35 +00:00
Viktor Szakats
3cdcdb805f 2000-06-02 02:54 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-02 00:51:40 +00:00
Viktor Szakats
07088ae6a6 2000-05-31 13:53 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-31 11:54:28 +00:00
Viktor Szakats
610a4f3195 2000-05-29 02:47 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-29 00:54:26 +00:00
Viktor Szakats
9217251a5a 2000-05-29 02:47 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-29 00:51:57 +00:00
Luiz Rafael Culik
099d94cf4d See changelog 20000528-21:55 gmt -3 2000-05-29 00:50:41 +00:00
Jean-Francois Lefebvre
937101dd91 *harbour/include/hboo.ch
*harbour/include/hbclass.ch
 Now support MI, scoping, fowarding and delegating
 Also support 10 chars limit by not prefixing the Classname when in 10 chars mode

*harbour/include/hbsetup.ch
 Allow the configuration of Hidden message

*harbour/source/rtl/objfunc.prg
 added function __objDerivedFrom(oSelf, oObj | cClassName)

*harbour/source/rtl/tclass.prg
 Major modification to implement MI & scoping
 Added message :Super to acces frist superclass object instance
 Added message :IsDerivedFrom(oObj | cClassName ) (Xbase++ comp.)

*harbour/source/vm/proc.c
  added char * hb_procname( int iLevel, char * szName )
  extracted from HB_FUNC( PROCNAME ) to allow it to be called from c
  HB_FUNC( PROCNAME ) modified to call the previous'one

*harbour/source/vm/classes.c
  Major modification to implement MI & Scoping
  Added function Sender() used by delegating to allow full polymorphism
  Added function __CLS_PARAM used by the preprocessor
2000-05-28 20:09:56 +00:00
Viktor Szakats
be81ee127d 2000-05-27 23:12 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-28 19:52:03 +00:00
Ron Pinkas
04837b2eaa 2000-05-22 10:40 UTC-800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbvmpub.h
     * Modified HB_FS_FIRST to  ( ( HB_SYMBOLSCOPE ) 0x04 )

   * source/compiler/harbour.c
     * Minor optimization when storing HB_FS_FIRST

   * source/pp/pptable.c
     - Removed built-in rule, for STRUCTURE support

   * source/vm/runner.c
     ! Fixed bug when there is no startup procedure

   * source/rtl/tclass.prg
     - Removed HB_Structure()

   * include/hbextern.ch
     * Moved EXTERNAL HB_STRUCTURE to separate section

   * tests/teststru.prg
     + added #INCLUDE "..\Include\HBSTRUC.CH"

   + include/hbstruc.ch

   + source/rtl/hbstruc.prg

   * makefile.bc
     + Added rules for hbstruc.prg
2000-05-26 07:39:42 +00:00
David G. Holm
38804ba817 See ChangeLog entry 2000-05-23 12:30 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-23 16:34:30 +00:00
Viktor Szakats
6a0ab26de6 20000523-02:06 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-23 00:03:41 +00:00
Ron Pinkas
30020a437f 20000522-09:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbextern.ch
     + Added HB_STRUCTURE to list of Externals
2000-05-22 16:47:45 +00:00
Paul Tucker
82c9bb8579 Update ComClass declaration 2000-05-22 05:51:04 +00:00
Ron Pinkas
8e184f78a4 20000520-21:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbvmpub.h
     + Added: #define HB_FS_FIRST    ( ( HB_SYMBOLSCOPE ) 0x40 )

   * source/compiler/genc.c
     + Added logic to add | HB_FS_FIRST to first defined symbol in a prg.

   * source/vm/hvm.c
     * Modified hb_vmProcessSymbols() to llok for HB_FS_FIRST for startup procedure instead of any first symbol.

   * source/compiler/harbour.y
     * Minor consilidation in AsType
       *** I am aware of 6 reduce conflicts resulting from previous removal of FROM_CLASS, and am looking into it. ***

   * tests/testwarn.prg
     ! Corrected the #translate to reflect latest syntax
2000-05-21 04:55:06 +00:00
Ron Pinkas
9f3912cbd9 20000519-15:28 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     + Added member pParamClasses to COMDECLARED
     * Changed hb_comp_szClass to hb_comp_szFromClass

   * source/compiler/harbour.y
     * Changed hb_comp_szClass to hb_comp_szFromClass

   * source/compiler/harbour.c
     + Added support for declared parameters of Functions/Methods AS Object FROM CLASS ...

   * source/compiler/hbpcode.c
     + Added Strong Type checking for declared parameters of Functions/Methods AS Object FROM CLASS ...

   * tests/testwarn.prg
     + Added code to demonstrate warnings for declared parameters of Functions/Methods AS Object FROM CLASS ...
2000-05-19 22:31:19 +00:00
Ron Pinkas
59501e617d 20000519-02:05 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     ! Consoldated COMDECLARED and COMMETHOD into COMDECLARED
     + Added member pClass to COMDECLARED
     + Added member pLast to COMCLASS

   * source/compiler/harbour.y
     + Added support for Methods/Datas of type Object of a declared Class.

   * source/compiler/harbour.c
     ! Fixed bug in hb_compMethodAdd()

   * source/compiler/hbpcode.c
     + Added Strong Type Checking to Objects syntax.

   * include/hberrors.h
     + Added : "HB_COMP_WARN_MESSAGE_NOT_FOUND"

   * source/compiler/hbgenerr.c
     + Added : "3Message \'%s\' not known in Class \'%s\'"

   * tests/testwarn.prg
     + Added code to demonstrate syntax and warnings for OO Strong Type Checking.
2000-05-19 09:25:06 +00:00
April White
f40b4c1306 20000515-20:22 GMT+4 April White <awhite@user.rose.com> 2000-05-16 02:14:00 +00:00
Ryszard Glab
e692ba8959 ChangeLog 20000513-14:50 GMT+1 2000-05-13 12:44:55 +00:00
Ron Pinkas
95dd157b13 20000512-08:00 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.y
    + Added support for END to be used with FOR loops.
2000-05-12 15:07:48 +00:00