Commit Graph

592 Commits

Author SHA1 Message Date
David G. Holm
d4d6cf8150 See ChangeLog entry 2001-08-31 14:30 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-08-31 18:28:04 +00:00
Antonio Linares
0e42e5f963 Linux GTK application entry point 2001-08-31 09:31:08 +00:00
David G. Holm
5c567f24fe See ChangeLog entry 2001-08-30 16:30 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-08-30 20:34:51 +00:00
Maurilio Longo
37e8299b9d 2001-08-24 16:40 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* contrib/os2pm/os2pm.c
     * moved here functions from mainpm.c
   * * contrib/os2pm/tform.prg
     + added new methods
   * source/vm/mainpm.c
     - removed a couple of helper functions which belong to os2pm.c
2001-08-24 14:41:55 +00:00
Maurilio Longo
aead08fae9 2001-08-23 23:13 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* source/vm/Makefile
     + if HB_GT_LIB == os2pm then compiles mainpm.c instead of main.c
   * source/vm/mainpm.c
     * little changes to make it work.

   NOTE: after gcc creates an executable file you need to issue an:
               emxbind -ep filename.exe
         to mark it as a PM executable, failing to do so the executable file is a
         VIO one and all calls to WinXxx() functions will fail
2001-08-23 21:16:46 +00:00
Maurilio Longo
4246c611e7 2001-08-23 16:43 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
+ source/vm/mainpm.c
     + added mainpm.c entry point for OS/2 Presentation Manager applications
       based on FiveWin GUI library
2001-08-23 14:45:29 +00:00
Jean-Francois Lefebvre
d5c355a81e 2001-08-20 22:20 GMT +1 JFL (mafact) <jfl@mafact.com> 2001-08-20 20:16:25 +00:00
Jean-Francois Lefebvre
f420483b5f 2001-08-19 23:30 GMT +1 JFL (mafact) <jfl@mafact.com> 2001-08-19 21:24:28 +00:00
Ryszard Glab
f047a9927f ChangeLog 2001-08-17 20:15 UTC+0100 2001-08-17 18:26:37 +00:00
Alexander S.Kresin
a0d25ebc80 2001-08-13 23:18 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-08-13 19:16:50 +00:00
David G. Holm
1335c7dba5 Added missing { after line 709. 2001-08-10 16:23:48 +00:00
David G. Holm
58ff911994 See ChangeLog entry 2001-08-10 12:15 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-08-10 16:20:17 +00:00
Ron Pinkas
515035d9fe 2001-08-09 17:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.c
     * Minor correction to handling of HB_FS_FIRST

   * source/vm/hvm.c
     * Added extern "C" protection to hb_macroAutoSetMacro() declaration.
2001-08-10 00:43:13 +00:00
Ron Pinkas
559b060f97 2001-08-09 02:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
   * include/hbcomp.h
   * include/hbexprb.c
   * include/hbexprc.c
   * include/hbmacro.h
   * include/hbmsetup.h
   * include/set.ch
   * source/compiler/cmdcheck.c
   * source/compiler/genc.c
   * source/compiler/harbour.c
   * source/compiler/hbpcode.c
   * source/rdd/dblist.prg
   * source/vm/hvm.c
     - Removed support for syncing of macro setting with main module.
     - Removed support for -ks which is replaced with -kr.
     + Added default logic to auto symchronize all macro activations with the compile time switches of each respective module.
     + Added -kr to disable auto synching, thus allowing Run-Time setting by means of HB_SETMACRO().
2001-08-09 09:48:59 +00:00
Maurilio Longo
3a638fda83 2001-08-08 23:52 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* include/hbvmpub.h
   * source/vm/classes.c
   * source/vm/hvm.c
   * source/vm/dynsym.c
     ! Fixed profiler counting of time elapsed inside recursive functions. It still has to
       be fixed for methods.
       NOTE: My knowledge of harbour VM is very poor. I hope I didn't break anything else :-))
     ! Fixed a few warnings inside hb_vmDo() and hb_vmSend()
   * source/vm/arrayshb.c
     ! Fixed isalnum() call on line 359, isalnum() requires an int
2001-08-08 21:55:19 +00:00
Ron Pinkas
65c8b39133 2001-08-06 23:50 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.c
     ! Corrected assigment of HB_FS_FIRST scope, for proper execution of first non INIT/EXIT procedure in main module.

   * source/compiler/genc.c
   * source/vm/hvm.c
     ! Improved sync logic of HB_SETMACRO() level, to only activate once per application before any prg level code is executed.
2001-08-07 06:50:36 +00:00
Ron Pinkas
cb4e5e74e0 2001-08-05 12:15 UTC-0800 Ron Pinkas <ron@profit-master.com>
+ include/hbmsetup.h
   * include/hbmacro.h
     * Moved #defines of HB_SM_* to new file hbmsetup.h

   * source/compiler/harbour.c
   * source/vm/macro.c
   * source/compiler/genc.c
     + Added logic to automatically synchronize HB_SETMACRO() level with the -k option supplied to compiler.

     /* HB_SETMACRO() may still be called explictly, but now specifying any -k option to harbour will automatically provide same
       level of functionalty in macro compiler. Example:

           harbour test -kc

        will restrict the compiler to the Clipper level mode, and will automatically disable extended macro support in that module
        without requiring:

           HB_SETMACRO( HB_SM_HARBOUR, .F. )
           HB_SETMACRO( HB_SM_XBASE, .F. )

        By default all harbour extensions are enabled - you can use -kc, -kx -ki, etc., to disable any unwanted feature.

        We should still review the need to have -ki which I find absolutley redundant and unproductive.
     */
2001-08-05 19:24:12 +00:00
Alexander S.Kresin
2b4f426339 2001-08-05 22:58 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-08-05 19:00:38 +00:00
Ron Pinkas
71ce8f8787 2001-08-04 11:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
      ! Added missing ; in line 956
2001-08-04 18:03:25 +00:00
Ryszard Glab
65cd98cadb ChangeLog 2001-08-04 15:15 UTC+0100 2001-08-04 14:19:29 +00:00
Ron Pinkas
0013eb731b 2001-07-31 10:10 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/arrayshb.c
     + Added HB_FUNC( HB_AEXPRESSION )

   * source/rdd/dblist.prg
     - Removed FUNCTION HB_aExpressions()
2001-07-31 17:11:07 +00:00
Ron Pinkas
928a660c0a 2001-07-26 16:21 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
     * Corrected typo in trace message within hb_macroExpandString()
2001-07-26 23:25:29 +00:00
Jean-Francois Lefebvre
842ae2a9c8 2001-07-26 22:50 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-26 21:50:52 +00:00
Ron Pinkas
da40f1d977 2001-07-23 20:50 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
     ! Corrected a compiler warning.
2001-07-24 03:46:39 +00:00
Lubos Janica
1be4191464 2001-07-23 22:35 UTC+0100 Lubos Janica <janicalubos@yahoo.com>
* classes.c
       Fixed function __CLSNEW.
       Changed variable USHORT uiSize to ULONG ulSize
       This fix random GPFs in function hb_clsDictRealloc by creating
       classes.
2001-07-23 20:51:32 +00:00
Ron Pinkas
fc7c28a6b3 2001-07-23 04:15 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbexprop.h
     + Added #define  HB_ET_MACRO_PARE    64

   * source/vm/hvm.c
   * source/vm/macro.c
   * source/macro/macro.y
   * include/hbexprb.c
     + Added support for HB_P_MACROPUSHPARE aand HB_P_MACROPUSHINDEX

   * include/hbmacro.h
     + Added #define HB_MACRO_GEN_PARE     16  /* generate parentesized list */

   * source/common/expropt1.c
   * source/common/expropt2.c

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added new opcode HB_P_MACROPUSHPARE

   /* This should complete macro list support for ( &cMacro ) and aArray[ &cMacro ] syntaxes. */
2001-07-23 11:13:06 +00:00
Ron Pinkas
e2e1eeb028 2001-07-22 14:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     * Changed 2nd parameter to BYTE iContext in hb_macroGetValue( HB_ITEM_PTR pItem, BYTE iContext )

   * include/hbexprop.h
     + Added #define  HB_ET_MACRO_LIST    16   /* &variable used as in literal arrays or parentesised expressions. */
     + Added #define  HB_ET_MACRO_INDEX   32   /* &variable used as arrays index. */

   * include/hbexprb.c
     + Added macro list support logic to hb_compExprUseArray()
     + Added generation of HB_P_MACROLIST,  HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX in hb_compExprUseMacro()

       /* HB_P_MACROLIST and HB_P_MACROLISTEND are only generated as an enevelope if array contains a one or more macro element
          which will generate an HB_P_MACROPUSHLIST. */

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added: new opcodes HB_P_MACROLIST, HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX.

   * source/vm/hvm.c
   * source/vm/macro.c
     + Added: support for new opcodes HB_P_MACROLIST, HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX.

       /* HB_P_MACROPUSHINDEX not completed yet.*/

   /* NOTE: This implements macro as literal array arguments list syntax <{ &cMacro }>.
           ( &Cmacro ) and Array[ &cMacro ] are not completed yet.

      *** All prgs must be recompiled due to new opcodes !!!
   */
2001-07-23 06:31:41 +00:00
Ryszard Glab
f6353a8674 ChangeLog 2001-07-22 20:15 UTC+0100 2001-07-22 19:03:52 +00:00
Ron Pinkas
6f912ba2bd 2001-07-19 20:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     + Added #define HB_MAX_MACRO_ARGS 16

   * source/vm/hvm.c
   * source/vm/macro.c
     + Added support for nested HB_P_MACROPUSHARG

   * contrib/dot/pp.prg
     - Removed bSplit in PP_PreProLine(). Instead added logic to split the line unless line is a directive.
2001-07-20 03:32:06 +00:00
Ron Pinkas
3928d386a1 2001-07-18 16:10 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
   * source/vm/hvm.c
     % Simplified logic for suppoting macro lists. Removed global variables:
          int hb_vm_iFunCalls = 0, *hb_vm_aiMacroListParameters = NULL, hb_vm_iMacroListAllocated
       which are no longer needed. No longer using any logic in any PCODE case, other than HB_P_PUSHMACROARG.
       No longer using any arrays, or memory allocations.

   * include/hbexpra.c
   * include/hbexprb.c
     * HB_P_PUSHMACROARG will now be followed with a push symbol sequence, indicating its parrent function call.

   * include/hbpcode.h
     * Added decimal values into the description comments for readability.
2001-07-18 23:11:05 +00:00
Antonio Linares
61fcc5cee3 Added hb_bProfiler support. 2001-07-18 09:49:52 +00:00
Antonio Linares
9a9e4a7804 Added (PRG level) __SetProfiler( On | Off ) 2001-07-18 09:46:42 +00:00
Maurilio Longo
bd80e8d997 2001-07-18 09:06 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/tbrowse.prg
     + activated scoping
   * include/hbapierr.h
     include/hbapiitm.h
     include/hbvm.h
     source/rtl/errorapi.c
     source/vm/hvm.c
     source/vm/itemapi.c
     ! fixed va_start() use or, better, changed it to be compatible with OS/2 EMX GCC
       compiler which REQUIRES that va_start() calls use a type which cannot be promoted
       to something bigger. That is, this call is correct:
       va_start(valist, ulUnsignedLongType)
       while this one is not:
       va_start(valist, usUnsignedShortType)
       Using a type which can be promoted to a bigger one leads to memory corruption.
       I think this requirement could exist even on other ANSI C compilers.
     ! Removed workaround inside hb_itemDo() and hb_itemDoC() to prevent this corruption.
2001-07-18 07:21:03 +00:00
Ron Pinkas
8abc351c51 2001-07-17 18:25 UTC-0800 Ron Pinkas <ron@profit-master.com>
* utils/hbpp/hbpp.c
     * Commented an exit() call in hb_compGenError() to continue processing after an error just like Harbour does.

   * include/hbapi.h
     + Added 2nd parameter BOOL bArg to hb_macroGetValue()

   * include/hbexpra.c
     + Added global BOOL hb_exp_bArgList = FALSE;

   * include/hbexprb.c
     + Added logic to generate HB_P_MACROPUSHARG rather than HB_MACROPUSH when pushed macro is a function call argument.

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added new HB_P_MACROPUSHARG

   * source/macro/macro.y
     + Added logic to generate an error if macro expression is list, unless servicing an HB_MACROPUSHARG.

   * source/vm/hvm.c
     + Added support for new HB_P_MACROPUSHARG calling hb_macroGetValue() with TRUE for bArg.

   * source/vm/macro.c
     + Added 2nd parameter BOOL bArg to hb_macroGetValue() to signify servicing of HB_P_MACROPUSHARG.

   * contrib/dot/pp.prg
     + Added bSplit 4th paramater to PP_PreProLine() defaulting to .T.. - Calls from PP_PreProFile() set it to .F..
2001-07-18 01:29:53 +00:00
Jean-Francois Lefebvre
5caa7066c1 2001-07-17 21:50 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-17 19:46:51 +00:00
Ron Pinkas
6ed48b5b25 2001-07-16 09:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
   * source/vm/macro.c
     + Wrapped macro statement support within #ifdef HB_MACRO_STATEMENTS (which is NOT defined).
2001-07-16 16:42:59 +00:00
Ron Pinkas
d8977933fa 2001-07-16 03:40 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
   * source/vm/macro.c
     + Added missing #include "hbpp.h" to resolve strict compiler warnings.
2001-07-16 10:40:24 +00:00
Ron Pinkas
4454fbac5e 2001-07-16 03:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
     + Added call to hb_pp_Free() in hb_vmQuit() to release pp tables if loaded by macro evaluation.
2001-07-16 10:03:05 +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
005cee072c 2001-07-15 20:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     + Added member iListElements to HB_MACRO structure.

   * source/macro/macro.y
     + Added rules to support a macro of a comma seperated list.

   * source/vm/hvm.c
     + Added: int hb_vm_iFunCalls = 0, *hb_vm_aiMacroListParameters = NULL, hb_vm_iMacroListAllocated
       to support new logic to track number of extra parameters introduced by means of a macro expanded to a list.

   * source/vm/macro.c
     + Added logic to track number of extra parameters introduced by means of a macro expanded to a list.
2001-07-16 03:43:13 +00:00
Jean-Francois Lefebvre
1177052490 2001-07-12 00:40 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-11 22:42:17 +00:00
Jean-Francois Lefebvre
0802a42ff6 2001-07-10 01:15 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-09 23:13:17 +00:00
Jean-Francois Lefebvre
5e42eeb160 2001-07-10 00:15 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-09 22:40:33 +00:00
Antonio Linares
c98c63f0d3 New profiler support functions added 2001-06-30 08:26:43 +00:00
Antonio Linares
31be17356d Added profiler support for functions and procedures 2001-06-30 07:39:36 +00:00
Antonio Linares
87bef70b86 added profiler initialization for new dynamic symbols 2001-06-30 07:19:31 +00:00
Antonio Linares
866d798b98 Profiler support added 2001-06-29 14:56:12 +00:00
Antonio Linares
4aaada42f3 profiler support added 2001-06-29 14:48:08 +00:00
Jean-Francois Lefebvre
84ebe40227 2001-06-26 00:40 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-06-25 22:42:35 +00:00
Ron Pinkas
bafe7aa495 2001-06-24 11:15 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/arrays.c
     ! Fixed but in hb_arrayDel() which caused a GPF by accessing an item beyond the array end.
2001-06-24 18:12:34 +00:00