Commit Graph

2765 Commits

Author SHA1 Message Date
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
514d744c40 Added Clocks2Secs() function 2001-07-18 10:16:59 +00:00
Antonio Linares
967f0e4401 removed Patrick's copyright 2001-07-18 09:54:52 +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
Martin Vogel
354a417174 2001-07-17 20:00 MEST Martin Vogel <vogel@inttec.de> 2001-07-17 17:47:34 +00:00
Alexander S.Kresin
a2059fbe50 2001-07-17 18:35 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-17 14:37:29 +00:00
Alexander S.Kresin
4e9ffa1634 2001-07-16 22:55 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-16 18:56:43 +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
Patrick Mast
efc6887efe 2001-07-16 15:19 GMT+1 Patrick Mast <harbour@PatrickMast.com>
* source/rtl/profiler.prg
     * Renamed function from Profiler() to HB_Profiler()
2001-07-16 13:21:37 +00:00
Patrick Mast
0ef3ee0a23 2001-07-16 13:00 GMT+1 Patrick Mast <harbour@PatrickMast.com>
* source/rtl/profiler.prg
     - Removed <lOnlyUsed> parameter
     + Added <cFile> parameter.
     + Added <lAll> parameter
     + Added Cunsumed time in seconds
     * Replaced MemoWrit() function with more controllable f* functions
     + profiler() returns a array with profiler info

       Profiler()
        => Writes NO info to file, returns Array of profiler info.
           Array only contains USED functions/classes.

       Profiler(,.t.)
        => Writes NO info to file, returns Array of profiler info.
           Array only contains ALL functions/classes.

       Profiler("profiler.txt")
        => Writes profiler info to <profiler.txt> and returns Array of
           profiler info. Array only contains USED functions/classes.

       Profiler("profiler.txt", .t.)
        => Writes ALL profiler info to <profiler.txt> and returns Array of
           profiler info. Array contains ALL functions/classes.
2001-07-16 12:16:32 +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
Martin Vogel
d3fa759ecd 2001-07-15 20:15 MEST Martin Vogel <vogel@inttec.de> 2001-07-15 18:19:40 +00:00
Patrick Mast
c682c4918e 2001-07-15 16:23 GMT+1 Patrick Mast <harbour@PatrickMast.com>
* source/rtl/profiler.prg
     + Added the <lOnlyUsed> parameter. If profiler is used like
       this Profiler(.t.), the profiler.txt will only be filled
       with used classes and/or functions.
2001-07-15 14:26:00 +00:00
Alexander S.Kresin
1d1e9f207c 2001-07-14 18:55 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-14 14:54:46 +00:00
David G. Holm
8363cacb24 See ChangeLog entry 2001-07-13 19:45 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-07-13 23:50:52 +00:00
Ron Pinkas
184ab4b277 2001-07-12 16:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/pp/ppcore.c
     ! Fixed bug of translating text within logical tokens (.T., .F., .OR., .AND., and .NOT.) by adding skip logic to md_strAt().
2001-07-12 23:45:11 +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
David G. Holm
a5b32fc15b See ChangeLog entry 2001-07-10 12:30 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-07-10 16:35:53 +00:00
Ron Pinkas
39d55d2d02 2001-07-10 01:55 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/cmdcheck.c
     + Added missing type cast to resolve gcc warning.
   * source/pp/ppcore.c
     + Added missing type cast to resolve gcc warning.
     - Removed 4 redundant #includes already included by included hbcomp.h
2001-07-10 08:53:06 +00:00
Maurilio Longo
2c1b30687b 2001-07-10 10:40 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/browse.prg
     ! fixed status line display
   * contrib/mysql/mysql.c
     ! mysql_field_count() is not available before version 3.22 of mysql
2001-07-10 08:42:50 +00:00
Ron Pinkas
1f3307d61c 2001-07-09 22:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Changed PP_Main() to STATIC Main() to have a Main procedure for build that require a MAIN yet avoid conflict if linked with a prg including a MAIN.
   * contrib/dot/pp_harb.ch
     * Wrapped a Windows specific code within #ifdef WIN.
   /* Thanks to input from Tomaž Zupan. */

   * source/pp/ppcore.c
     ! Added a BOOL 2nd parameter to isExpres() to flag a LIST MP. This fixes problem with matching a list exp with an empty component.
2001-07-10 05:02:50 +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
Ignacio Ortiz de Zuniga
1ba39e4215 Tab expand fixed bug 2001-07-06 09:37:56 +00:00
Brian Hays
5a4db4322a 2001-06-21 11:19 UTC-0800 Brian Hays <bhays@abacuslaw.com> 2001-07-05 20:22:12 +00:00
Viktor Szakats
a3d23ec650 2001-07-02 23:42 UTC+0100 Viktor Szakats <viktor.szakats@syenar.hu> 2001-07-02 21:45:19 +00:00
Antonio Linares
783f71945f $id added 2001-06-30 12:32:52 +00:00
Antonio Linares
21e04bc13c Added support for functions and procedures 2001-06-30 08:33:17 +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
David G. Holm
8ffc18801e See ChangeLog entry 2001-06-29 18:40 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-06-29 22:45:33 +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
Antonio Linares
32ca00ef78 *** empty log message *** 2001-06-29 14:36:07 +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
David G. Holm
6c5d60d9f6 See ChangeLog entry 2001-06-22 11:10 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2001-06-22 15:14:51 +00:00
Ron Pinkas
c57f209fda 2001-06-22 07:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/pp/ppcore.c
     + Added logic for new Idenitifier Match Marker <!AnyId!> which will only match Identifiers.
     + Added static BOOL IsIdentifier( char *szProspect )

   * include/hbclass.ch
     ! Changed <name> to <!name!> in 3 VO OO compatibility rules, where regular match marker was TOO generic.
     ! Reinstated default #define HB_CLS_VO
2001-06-22 14:31:24 +00:00
Brian Hays
b4615def8e 2001-06-21 11:19 UTC-0800 Brian Hays <bhays@abacuslaw.com> 2001-06-22 06:13:35 +00:00
Ron Pinkas
e49056d419 2001-06-21 22:20 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Added support fort '|' as a continuation token (as in Clipper).

   * include/hbclass.ch
     - Commented out 3 rules used for VO OO compatibility that are TOO generic, and match unexpected input.

   * source/pp/ppcore.c
     - Recommented out test for continuation token at the end of an Expression in isExpres() (after correcting cause for prior reinstatment).
2001-06-22 05:22:42 +00:00
Ron Pinkas
e025c159ab 2001-06-21 18:20 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/pp/ppcore.c
     * Reinstated test for continuation token at the end of an Expression in isExpress()
       /* Clipper does not validate extracted expression like that, but Harbour PP has internal dependancy due to matching logic.
          Alexander, Clipper stops an expression when encountering the Anchor of the next NON optional Match Marker.
          Clipper accepts that expression even if it ends with continuation token (like '*').
       */
2001-06-22 01:25:02 +00:00
Ron Pinkas
c09e2a2779 2001-06-21 14:55 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/pp/ppcore.c
     * Commented out test for continuation token at the end of an Expression in isExpress()
       /* Clipper does not validate extracted expression like that. This solves problem with:
          SAVE ALL LIKE Patt* TO File
        */
2001-06-21 21:52:07 +00:00