Commit Graph

29 Commits

Author SHA1 Message Date
Ron Pinkas
352d1ea388 2002-05-23 12:46 UTC-0800 Ron Pinkas <ron@ronpinkas.com>
* source/compiler/harbour.slx
    ! Fixed SELF[...] // Self as Array in IF_BELONG_LEFT() ( borrowed from from xHarbour )

  * source/compiler/harbour.sly
    ! Corrected typo in GetVar - included item belonging to GetVarArray ( borrowed from from xHarbour )
    ! Fixed logic of GetA ( borrowed from from xHarbour )
2002-05-23 19:48:48 +00:00
Ron Pinkas
3d3094e82d corrected type in pasting from xHarbour 2002-03-14 04:38:00 +00:00
Ron Pinkas
564a6d0295 2002-03-13 14:07 UTC-0800 Ron Pinkas <ron@ronpinkas.com>
* source/compiler/harbour.slx
    + Enabled support for TEXT ... ENDTEXT utilizing new hb_ppInsideTextBlock

  * source/compiler/harbour.sly
    ! Correted minor bug in GetA
2002-03-13 22:11:22 +00:00
Andi Jahja
19f26bd08b Andi Jahja <harbour@cbn.net.id> 2001-12-15 19:20:59 +00:00
Viktor Szakats
e1f892788e 2001-12-14 10:17 UTC+0100 Viktor Szakats <viktor.szakats@syenar.hu> 2001-12-14 09:32:52 +00:00
Brian Hays
9ce084bc35 2001-08-25 03:05 UTC-0800 Brian Hays <bhays@abacuslaw.com> 2001-08-25 22:06:39 +00:00
Ryszard Glab
f2f764c5a8 ChangeLog 2001-08-05 14:20 UTC+0100 2001-08-05 13:06:55 +00:00
Ron Pinkas
4b444c4812 2001-08-04 13:50 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.l
   * source/compiler/harbour.slx
     * Added inline c support for hb_comp_iLanguage == LANG_OBJ_MODULE

   * source/compiler/harbour.sly
     * Added support for HB_COMP_ISSUPPORTED( HB_COMPFLAG_XBASE ) in Statement : ( MacroVar and MacroExpr ) to sync with harbour.y
2001-08-04 20:50:06 +00:00
Ryszard Glab
8e957ebe48 ChangeLog 2001-07-21 18:15 UTC+0100 2001-07-21 16:56:04 +00:00
Ron Pinkas
59e84f3aa6 2001-07-19 12:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
   * source/compiler/harbour.y
     + Added  "$$->value.asMacro.SubType = HB_ET_MACRO_SYMBOL" to "MacroVarAlias :" because in this context macro is a symbol.
2001-07-19 19:03:53 +00:00
Ron Pinkas
6c5369f4f8 2001-07-16 02:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
     * Few improvements to recent support for lists in macro expansion

   * source/vm/macro.c
     + Added preprocessing support to hb_macroGetValue()

   * source/compiler/harbour.sly
   * source/compiler/harbour.y
     + Added rules to support MacroVar and MacroExpr as a standalone Statement.
2001-07-16 09:41:28 +00:00
Ron Pinkas
187797ce58 2001-06-20 22:10 UTC-0800 Ron Pinkas <ron@profit-master.com>
* hb_slex.vc
   * makefile.vc
     * Synched make files.

   * contrib/libmisc/makefile.vc
     ! Corrected BIN_DIR to ../../bin/vc

   * source/compiler/simplex.c
     * Revised 1 debug message.
   * source/compiler/harbour.slx
     * Improved yytext handling.

   * source/compiler/harbour.sly
   * source/compiler/harbour.y
     + Added <yyerrok> after <yyclearin> to enable reporting of errors on consecutive lines. (only first line was reported!)
2001-06-21 05:13:07 +00:00
Ron Pinkas
88d6d4ea34 2001-05-10 14:40 UTC-0800 Ron Pinkas <ron@profit-master.com> 2001-05-10 22:05:54 +00:00
David G. Holm
0e07837322 See ChangeLog entry 2001-04-12 15:00 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-04-12 18:56:30 +00:00
Ron Pinkas
274cba392f 2001-04-08 16:15 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hberrors.h
     ! Corrected typo.

   * source/compiler/harbour.sly
   * source/compiler/harbour.y
     ! Corrected few incorrect "Unreachable code warnings".
     ! Corrected hb_compPushLine() in RECOVER and RECOVERUSING

   * source/compiler/harbour.c
   * source/compiler/hbpcode.c
     ! Improved StrongType logic.
2001-04-08 23:16:24 +00:00
Ron Pinkas
edb06cb10a 2000-12-03 15:05 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     ! Optimized __GETA() support, and changed it to be implementated identical to Clipper.
       /* Clipper passed a bGet Block which refrences the Base Array Variable and not the Variable itself.
          Clipper passes NIL instead of bGet block if the Base Array is MACROVAR or MACROTEXT.
          Clipper does not optimize "&Macro" to Macro, but Harbour does! */

   * source/rtl/tgetint.prg
     * __GETA() Changed 1st parameter aVar to bGetArray and logic to get the Base Array if bGetArray is NIL
       /* Optimized to not use macro if possible (most cases) even if the GetArray is a macro. */

   * tests/testget.prg
     + Added additional test.
2000-12-03 23:21:19 +00:00
Ron Pinkas
21a332f04c 2000-12-01 01:50 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     ! Minor optimization.
   * source/rtl/tgetint.prg
     * Corrected typo
2000-12-01 09:53:40 +00:00
Ron Pinkas
159793c2ce 2000-11-29 13:50 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.c
     * Exported: hb_compFieldGetPos() and hb_compMemvarGetPos()

   * source/compiler/harbour.sly
     ! Changed __GET() support to be parameter compatible with Clipper

   * include/hberrors.h
   * source/compiler/hbgenerr.c
     + Added Error: "GET contains complex macro"

   * source/pp/pptable.c
     - Removed bSetGet from rule of GET, PP output now Clipper compatible.

   * source/vm/memvars.c
     + Added HB_FUNC( __ISMV ) // Return .T. if passed string as a Memory Variable.

   * source/rtl/tgetint.prg
     ! Fixed __GET() to be 100% parameter compatible with Clipper.
     ! When 1st parameter (bSetGet) is NIL the bSetGet will be built internaly,
       not using macro in most cases, even if the Get Variable itslef is a macro :-)

   /* Ryszard, this will further break Flex support for GET, but makes __GET() 100% Clipper compatible as you suggested.
      Please note, that Clipper does *NOT* pass a bSetGet *only* when the Get Var is a *simple* *non* declared Variable.
      Declared Variables in this context are: MEMVAR, FIELD, LOCAL, and STATIC. For all of those, bSetGet *is* generated!
      Clipper also generates bSetGet for "Complex Variables", i.e. Aliased Variables, Object Data, etc.! */
2000-11-29 21:54:03 +00:00
Ron Pinkas
7c25a95b82 2000-11-24 21:10 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.y
   * source/compiler/harbour.sly
     + Added support for MacroExpr as FunCall
2000-11-25 05:10:21 +00:00
Ryszard Glab
c4c3b17b9a ChangeLog 2000-11-13 20:25 UTC+0100 2000-11-13 19:14:32 +00:00
Ron Pinkas
d60088eac0 2000-11-10 11:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     + Added support for early macro of expansion declared symbol for simple macro expression within CodeBlock (Like Clipper).

   * source/rtl/tgetint.prg
     ! Corrected creation of bSetGet if uVar == NIL, to avoid compile error:
       "Code block contains both macro and declared symbol references".
2000-11-10 19:43:13 +00:00
Ron Pinkas
bcca8b7b78 2000-11-07 22:50 UTC+0800 Ron Pinkas <ron@profit-master.com>
* include/hberrors.h
     + Added: #define HB_COMP_ERR_BLOCK                       47
   * source/compiler/hbgenerr.c
     + Added Error: "Code block contains both macro and declared symbol references"

   * source/compiler/harbour.c
     * Made public: hb_compLocalGetPos() and hb_compStaticGetPos()

   * source/compiler/harbour.slx
     + Added: char * hb_comp_SLX_LastBlock( BOOL bReset )

   * source/compiler/harbour.sly
     + Added logic to support Early Expansions of Macro within CodeBlock unless parenthesized.

   + tests/tstblock.prg
     + New test of Early/Late expansion of Macros within CodeBlocks.
2000-11-08 07:25:07 +00:00
Ron Pinkas
3a7b8b8893 2000-11-02 20:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     + Added rule to accept Get and GetA as FunCall

   * source/compiler/harbour.y
     + Added support for pseudo function _GET_()
   * source/compiler/harbour.l
     + Added _GET_(...) => __GET(...)/__GETA(...) logic from harbour.sly

   * source/macro/macro.slx
     * Corrected YY_DECL #define (Thanks John)

   * source/rtl/tget.prg
   * include/hbextern.ch
     - Removed no longer needed _GET_()
2000-11-03 23:42:27 +00:00
Ron Pinkas
c3cde2a777 2000-11-02 15:20 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     + Added support for extended parameters to __GET() and __GETA()
     ! Corrected 2nd parameter of __GETA() to reflect only the Base Array Name.

   * source/rtl/tget.prg
     ! Added support for :SubScript in __GETA()

   * include/hbextern.ch
     - Removed _GET_
     + Added __GETA
2000-11-02 23:18:49 +00:00
Ron Pinkas
ee24175dc0 2000-11-01 17:25 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
     ! Optimized _GET_ support.
     + Added support for GET of ObjectData and ObjectData ArrayIndex.

   * source/rtl/tget.prg
     + Added method ParsePict() and logic to support dynamic modification of the picture by altering :Picture as in Clipper.

   * tests/testread.prg
     + Added line to demonstrate GET of ObjectData and dynamic modification of a PICTURE clause.
2000-11-02 01:28:51 +00:00
Ron Pinkas
97f36b7075 2000-11-01 04:25 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
     + Added support for pseudo function _GET_(...)
   * source/compiler/harbour.sly
     + Added support for pseudo function _GET_(...) to be converted into appropriate __GET(...) or __GETA(...)
   * source/rtl/tget.prg
     + Added __GETA() to correctly support early binding of Array Element Index of GET
   * tests/testread.prg
     + Added code to test correct (early) binding of Array Element Index of GET
2000-11-01 12:23:24 +00:00
Ron Pinkas
b324acddea 2000-10-27 08:50 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/genc.c
    * source/compiler/genhrb.c
    * source/compiler/genjava.c
    * source/compiler/genobj32.c
    * source/compiler/harbour.c
    * source/compiler/harbour.l
    * source/compiler/harbour.slx
    * source/compiler/harbour.sly
    * source/compiler/harbour.y
      - Removed License Exception from core compiler files that are not part of HVM or HRL

    /* Dave, could you please verify this is correct. */
2000-10-27 15:54:28 +00:00
Ron Pinkas
a5e4deaa88 2000-09-18 09:30 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
   * source/compiler/harbour.sly
   * source/compiler/harbour.y
   * source/compiler/simplex.c
   * source/macro/macro.slx
     ! Corrected compiler warnings.
2000-09-18 16:36:54 +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