Commit Graph

739 Commits

Author SHA1 Message Date
Luiz Rafael Culik
03cc487a48 See changelog 2000-10-26 22:10 GMT -3 2000-10-27 00:16:37 +00:00
Maurilio Longo
e7d57ae81a 2000-10-01 18:25 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-01 16:31:40 +00:00
Ron Pinkas
ba6f7b3667 2000-09-17 23:45 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.l
     ! Corrected definition of _PROCREQ_()

   * tests/testdecl.prg
     - Removed 1 line of unspported syntax.

   * source/macro/macro.slx
   * source/compiler/harbour.slx
     % Greatly optimized, much simplified, smaller, and faster.
     ! Converted all "non conventional" macros to functions.

   * source/compiler/simplex.c
     % Greatly optimized, now as fast as Flex based lexer.
     ! Converted all "non conventional" macros to functions.
     + Added support for predefind match pattern, {WS} (White Space), in KEYWORDS and WORDS.

   + source/compiler/harbour.sly
     * Same as harbour.y, excluding un-needed support for reserved words used as identifiers.
     /* Harbour.slx works with either harbour.y or harbour.sly, but harbour.sly creates smaller harbour.exe. */

   * hb_slex.bc
     * Modified to use harbour.sly
2000-09-18 07:04:53 +00:00
Ron Pinkas
c201844c39 2000-09-06 12:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.l
     + Added AS CHAR[ACTER] for compatibility with FW (FW can't use #translate AS CHAR => AS STRING, because FW also uses AS CHAR
       in DLL calls where AS CHAR referes to *native* char type).
     ! Correted AS ... to allow multiple space/tab, and support abbreviations.

   * source/compiler/simplex.c
     + Added KEYWORD_ACTION() and WORD_ACTION() macros.

   * source/macro/macro.slx
     ! Optimized numerous HB_*_ID to a single HB_IDENTIFIER.

   * source/compiler/harbour.slx
     + Added AS CHAR[ACTER] for compatibility with FW (FW can't use #translate AS CHAR => AS STRING, because FW also uses AS CHAR
       in DLL calls where AS CHAR referes to *native* char type.
     ! Optimized numerous HB_*_ID to a single HB_IDENTIFIER.

   * include/hbclass.ch
     * Changed _<AssignName> to <AssignName> in HB_MEMBER directives.
     + Added AS CLASS <ClassName> to LOCAL Self := QSelf()

   * tests/testdecl.prg
     + Added code to demonstrate missing support for class memeber RT type protection (AS ...)
2000-09-06 19:53:10 +00:00
Bruno Cantero
afc9172d10 2000-09-05 21:30 GMT+1 Bruno Cantero <bruno@issnet.net> 2000-09-05 19:44:25 +00:00
Bruno Cantero
5868934fbb 2000-09-05 14:47 GMT+1 Bruno Cantero <bruno@issnet.net> 2000-09-05 13:47:20 +00:00
Ron Pinkas
2d1a852803 2000-09-02 09:00 UTC+0800 Ron Pinkas <ron@profit-master.com>
* hb_slex.bc
     * Synchronized with makefile.bc

   * include/hbclass.ch
     + Added: [AS <type>] optional clause to all Methods/Messages syntax.
     + Added directives to generate class declaration from same class creation code.

   * include/hbcomp.h
   * source/compiler/harbour.c
     + Added: char hb_comp_cDataListType;

   * source/compiler/harbour.l
     + Added support for new _HB_CLASS and _HB_MEMBER alternate class declaration syntax.

   * source/macro/macro.slx
     ! Moved .T., .Y., .F., and, .N. from self contained words to words.

   * source/compiler/harbour.slx
     ! Moved .T., .Y., .F., and, .N. from self contained words to words.
     + Added support for new _HB_CLASS and _HB_MEMBER alternate class declaration syntax.

   * source/compiler/harbour.y
     ! Improved definition of formal and optional paramter lists.
     + Added support for alternate class declaration syntax:
       _HB_CLASS ClassName
       _HB_MEMBER { [AS ...] Var1, VarN }
       _HB_MEMBER MethodName( [ [OPTIONAL] [@]FormalParam [AS ...] | @FunPointer() ] ) [ AS ... ]
       /* This syntax allows the class declaration to be on multiple seperated lines (needed to allow utilization of class creation code.)
          Tokens _HB_CLASS & _HB_MEMBER are not final, until some discussion with Ryszard. */

   * source/compiler/hbpcode.c
     * Completed classes strong type support for adaptive type variable.

   * source/rtl/tlabel.prg
   * source/rtl/treport.prg
     ! Corrected typos: AS {} -> INIT {} AS ARRAY, AS .T. -> INIT .T. AS LOGICAL etc..

   * tests/testdecl.prg
     * Changed to demonstrate class creation used as declaration.

   * utils/hbtest/hbtest.prg
     * Changed DBFNTX -> DBFCDX (was not working because DBFNTX is disabled.
2000-09-02 16:30:36 +00:00
Bruno Cantero
5dd62675ed 2000-09-02 00:08 GMT+1 Bruno Cantero <bruno@issnet.net> 2000-09-01 22:16:56 +00:00
Bruno Cantero
8cb7ed34ce 2000-08-30 10:40 GMT+1 Bruno Cantero <bruno@issnet.net> 2000-08-30 08:45:00 +00:00
Bruno Cantero
0473817fe2 CHANGELOG: 3000-08-29 22:00 GMT+1 Bruno Cantero <bruno@issnet.net> 2000-08-29 20:16:56 +00:00
Ron Pinkas
da1d815d4d 2000-08-28 10:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.c
   * source/compiler/harbour.y
     + Added support for DECLARE FunName(...) AS CLASS ClassName
     + Added support for DECLARE FunName( ... @SomeFun() ... ) - Function Pointer declared parameter.

   * source/compiler/simplex.c
     * Corrected some compiler warnings.

   * source/compiler/harbour.slx
     * Reenabled support for ID_ON_HOLD.

   * include/hberror.h
     + Added: #define HB_COMP_WARN_RETURN_SUSPECT             28

   * source/compiler/hbgenerr.c
     + Added: "4Suspecious return type: \'%s\' expected: \'%s\'"

   * source/compiler/hbpcode.c
     + Completed support for Strong Typed variables as declared classes, as well as Adaptive Typed usage with declared classes.
     * Few other corrections and enhancements.

   * include/hbclass.ch
     + Added TClass declaration:
	DECLARE TClass ;
		New( cName AS STRING, OPTIONAL SuperParams ) AS CLASS TClass ;
		Create() AS OBJECT;
		Instance() AS OBJECT ;
		AddClsMthds( cName AS STRING, @Method(), nScope AS NUMERIC, n2 AS NUMERIC, n3 AS NUMERIC );
		AddMultiClsData( cType AS STRING, uVal, nScope AS NUMERIC, aDatas AS ARRAY OF STRING );
		AddMultiData( cType AS STRING, uVal, nScope AS NUMERIC, aDatas AS ARRAY OF STRING );
		AddMethod( cName AS STRING, @Method(), nScope AS NUMERIC );
		AddInLine( cName AS STRING, bBlock AS CODEBLOCK, nScope AS NUMERIC );
		AddVirtual( cName AS STRING )
     + Added declaration to s_oClass  AS CLASS TClass

   * tests/testdecl.prg
     * Minor refinement.
2000-08-28 17:55:49 +00:00
Viktor Szakats
0bf0970f51 2000-08-15 02:48 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-08-15 01:32:01 +00:00
Ron Pinkas
d93298fc67 2000-08-09 17:15 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/simplex.c
     * Minor improvements.

   * source/compiler/harbour.slx
     - Removed un-needed cases in hb_lex_CustomAction() added by Ryszard.
     - Removed 1 rule each for WHILE CASE BREAK and RETURN to default trailing '[' to string delimiter.

   * tests/keywords.prg
     * Corrected few lines that had '[' as Array Index to String Delimiter after CASE, BREAK etc.

     /* Note keywords.prg should now be valid other than 3 (old) correct errors to do with FIELD*/
     SimpLex based harbour does compile it correctly Flex reports 26 incorrect errors.
2000-08-10 00:36:21 +00:00
David G. Holm
19b6db6f49 See ChangeLog entry 2000-08-08 17:15 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2000-08-08 21:19:35 +00:00
Ron Pinkas
c06672fe89 2000-08-08 02:00 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.c
    * Corrected display of errors statistics to use \r so that error count doen't appear connected to the last reported
      compiler line number progress.

  * source/macro/macro.slx
    - Removed unused asHold

  * source/compiler/harbour.slx
    - Removed unused asHold
    - Optimized some rules.

  * source/compiler/simplex.c
    - Removed unused asHold

  * tests/keywords.prg
    * Uncommented all code that was commented other than few lines which I added TODO: PP ... for (problem resulting from PP)
2000-08-08 09:11:01 +00:00
Ron Pinkas
07cad51b18 2000-08-07 12:20 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.y
     + Added support for OPTIONAL Var... as first parameter[s] of declared function.

   * tests/testdecl.prg
     + Added: DECLARE SomeFunc( OPTIONAL SomeVar AS STRING ) and DECLARE SomeFunc( OPTIONAL SomeVar AS STRING, OPTIONAL OtherVar )
       to test syntax of OPTIONAL as first parameter[s] of declared function.

   * source/compiler/harbour.slx
     - Removed few redundant rules.
     * Improved handling of INC/DEC
2000-08-07 19:25:21 +00:00
Ron Pinkas
e09d364512 2000-07-31 09:00 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/simplex.c
   * source/macro/macro.slx
     ! Corrected compiler warnings

   * tests/testwarn.prg
   * utils/hbdoc/ft_funcs.prg
     * Commented AS USUAL until votes results tabulated
2000-07-31 15:58:41 +00:00
Viktor Szakats
2f43451c9d 2000-07-30 14:32 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-07-30 12:44:49 +00:00
Ron Pinkas
8ba6374685 2000-07-29 07:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
    + Added 2 rules to support DECLARE MACROVAR and DECLARE MACRO TEXT

  * tests/testdecl.prg
    ! Fixed to allow it to be run without RT Error
2000-07-29 14:54:10 +00:00
Ryszard Glab
2493328906 ChangeLog 2000-07-29 15:55 UTC+0100 2000-07-29 13:48:20 +00:00
Viktor Szakats
4874336088 2000-07-29 02:58 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-07-29 01:04:53 +00:00
Ron Pinkas
ffa6630674 2000-07-28 14:00 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
     + Added logic to account for HB_SYMBOL_NAME_LEN
     + Added 2 rules to support DECLARE SomeVar as in PRIVATE SomeVar as oppose to Strong Type DECLARE SomeClass SomeVar ...

   + tests/testdecl.prg
     + Added test program to utilize the DECLARE in its different contexts.
2000-07-28 21:03:36 +00:00
Ron Pinkas
6f4ad44c3a Corrected testwarn.prg to not have missing externals. 2000-07-26 00:25:57 +00:00
Ron Pinkas
69a049ff81 Re-Added tests\test.dbf with -kb switch 2000-07-25 02:13:26 +00:00
Ron Pinkas
0670eff1b6 Removed tests\test.dbf 2000-07-25 02:10:29 +00:00
Ron Pinkas
e38c8d90b3 2000-07-24 18:25 UTC+0800 Ron Pinkas <ron@profit-master.com>
! tests\test.dbf
     ! Recovered previous version.
2000-07-25 01:28:35 +00:00
Viktor Szakats
5184b749ca 2000-07-24 22:12 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-07-24 20:18:15 +00:00
Viktor Szakats
a1e6f03ea0 2000-07-24 22:12 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-07-24 20:16:31 +00:00
Ron Pinkas
b3e611d907 2000-07-14 22:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
     ! Removed Todo: Hex Numbers. There are no more known TODOs.
2000-07-15 05:42:12 +00:00
Ron Pinkas
7fdc515e94 2000-07-14 09:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/simplex.c
     ! Minor correction, to accept a match, if all rule's tokens used.
2000-07-14 16:42:37 +00:00
Ryszard Glab
edf09af041 ChangeLog 2000-07-12 10:25 UTC+0100 2000-07-12 08:45:04 +00:00
Ryszard Glab
6d13e23d68 ChangeLog 2000-07-03 20:00 UTC+0100 2000-07-03 17:53:40 +00:00
Ryszard Glab
c2f5cbc281 ChangeLog 2000-06-25 23:58 UTC+0100 2000-06-25 21:54:15 +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
Ryszard Glab
ade872095c ChangeLog 2000-06-25 10:40 UTC+0100 2000-06-25 08:38:35 +00:00
Ryszard Glab
5e6a63d3c7 ChangeLog 2000-06-24 20:10 UTC+0100 2000-06-24 18:02:43 +00:00
Patrick Mast
00548613cf 2000-05-07 23:30 CET Patrick Mast <harbour@PatrickMast.com>
* tests/testhtml.prg
     * changed the Default() function into If(...)
2000-06-17 12:58:49 +00:00
David G. Holm
56af97ae3d See ChangeLog entry 2000-06-15 15:30 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2000-06-15 19:37:09 +00:00
Viktor Szakats
233fc41349 2000-06-04 17:52 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-06-04 15:48:43 +00:00
Maurilio Longo
3e886ea141 20000529-00:01 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 22:02:50 +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
814163b5b3 See ChangeLog 2000-05-24 10:35 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-24 14:38:37 +00:00
Ron Pinkas
9f05928bd2 20000522-10:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     ! Fixed ambigious else in hb_StrongType()

   * source/pp/pptable.c
     ! Fixed STRUCTURE rule to allow nesting of structures.

   * tests/teststru.prg
     * Enhanced to demonstrate Structure as element of other structure and self reference capabilities.
2000-05-23 01:31:34 +00:00
Ron Pinkas
e6afd45d90 20000522-09:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* contrib/hbclip.ch
     ! Updated to reflect latest sysntax.

   * tests/testwarn.ch
     ! Updated translate segment to reflect latest sysntax.
2000-05-22 17:28:03 +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
Ron Pinkas
eb2d8afdb4 20000522-06:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added "as structure", "as stru", "as array of structure", "as array of stru"

   * source/compiler/hbpcode.c
     * Improved some logic in hb_StrongType()

   * source/vm/hvm.c
     ! Corrected startup symbol when having to use Main() as per Ryszard.

   * source/pp/pptable.c
     + Added the equivalent of:
        #COMMANDS STRUCTURE <StruName> <Var1> AS <Type1> [, <VarN> AS <TypeN> ] => ;
                  STATIC __<StruName> := {|| IF( __<StruName> == NIL, , ) , HB_Structure( <"StruName">, { <"Var1"> [, <"VarN">] } )} ;;
                  DECLARE <StruName> <Var1> AS <Type1> [ <VarN> AS <TypeN> ] ;;
                  #TRANSLATE AS NEW <ClassName> => AS CLASS <StruName> := ( Eval( __<StruName> ), HB_Structure( <StruName> ) )

	#TRANSLATE AS NEW <ClassName> => AS CLASS <ClassName> := <ClassName>():New()

   * source/rtl/tclass.prg
     + Added Function HB_Structure() ( Fully Declared! ) This function is used internally, but may be freely called from Clipper level.
       It Aceepts Parameter 1 Structure Name, and optional parameter 2, as array of structure variable names.
       If called with 2nd parameter, returns NIL (just creates the new Structure), if called with just parameter 1, it returns
       new instance of defined structure.

   + tests\teststru.prg
     + Added demo for new structure syntax
2000-05-22 13:53:14 +00:00
Ron Pinkas
a2b2b0ab65 20000521-14:42 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* tests/testwarn.prg
     ! Consolidate #translate rules, and verified that it can compile under Clipper
2000-05-21 21:43:25 +00:00
Ron Pinkas
c7e237273e 20000521-14:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added "as class"

   * source/compiler/harbour.y
     ! Fixed shift conflicts and reduce conflicts.
     * Modified rules for syntax "AS Object ClassName" to "As Class ClassName"

   * tests/testwarn.prg
     ! Corrected the #translate to reflect latest syntax
     ! Corrected syntax to use AS CLASS ClassName instead of AS OBJECT ClassName.
2000-05-21 21:19:51 +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