Commit Graph

9261 Commits

Author SHA1 Message Date
Viktor Szakats
967c149c42 2008-10-18 10:56 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* common.mak
   * make_b32.mak
   * make_vc.mak
   * make_gcc.mak
     % Harbour command line configuration moved to common.mak.

   * source/rtl/tclass.prg
   * source/rtl/tget.prg
     + NOTE added to tclass.prg.
     * Minor formatting.
2008-10-18 08:58:34 +00:00
Viktor Szakats
ee26c1b8d6 2008-10-18 10:27 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbapi.h
  * source/common/hbgete.c
    + Added hb_getenv_buffer(). Similar to hb_getenv() but 
      this one needs a buffer+size to be passed, so no memory 
      allocation is done by the function. It also return 
      a BOOL to signal success. It doesn't signal if passed 
      buffer was too small to store the value.
2008-10-18 08:28:50 +00:00
Przemyslaw Czerpak
21811155d6 2008-10-18 08:36 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/dbgtwin.prg
  * harbour/source/debug/dbgbrwsr.prg
  * harbour/source/debug/debugger.prg
    ! fixed mono color setting
    * minor formatting
2008-10-18 06:36:46 +00:00
Viktor Szakats
3605f5ffca minor formatting 2008-10-17 16:38:23 +00:00
Viktor Szakats
6b060e2895 2008-10-17 18:22 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/dbgtwin.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/tbrwtext.prg
  * source/debug/debugger.prg
    ! Fixed to not crash after switching to mono display.
      DISCLAIMER: This is a quick patch (but even this took 
      hours) and it absolutely can be wrong, incomplete in 
      any ways. I'm not using or knowing debugger code, pls 
      patch it further on.
      NOTE: Color refresh after switching mono/color mode 
            is still wrong and I've given up after trying 
            for a few hours.
    * Minor formatting.
2008-10-17 16:23:12 +00:00
Przemyslaw Czerpak
edd1019b40 2008-10-17 16:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/console.c
    ! added missing #include "hbapierr.h"
2008-10-17 14:35:33 +00:00
Przemyslaw Czerpak
9d3a557435 2008-10-17 15:55 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/pp/hbpp.c
    * workaround for warning in some GCC versions which can lost
      user casting during function autoinline optimization.

  * harbour/source/rtl/console.c
  * harbour/source/rtl/gtapi.c
    * moved //INFO message from hb_gtInit() to hb_conInit()

  * harbour/source/rtl/hbgtcore.c
  * harbour/contrib/hbct/ctwin.c
    * minor cleanup
2008-10-17 13:56:09 +00:00
Przemyslaw Czerpak
2502e5b0bf 2008-10-17 12:41 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/debugger.prg
    * changed __dbgInput() to return logical value and set edit value in
      variable passed by reference

  * harbour/source/debug/dbgtobj.prg
  * harbour/source/debug/dbgthsh.prg
  * harbour/source/debug/dbgtarr.prg
    ! fixed typo in VALID block declaration - it was array by mistake
    * removed unnecessary code related to GET behavior
    * use new __dbgInput() format
2008-10-17 10:41:48 +00:00
Viktor Szakats
5d9cdfab9c 2008-10-17 10:16 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/dbgtobj.prg
  * source/debug/dbgthsh.prg
  * source/debug/debugger.prg
  * source/debug/dbgtarr.prg
    * Changed rest of GETs to __dbgInput()

  * source/rtl/listbox.prg
    - Removed saving cursor position and color, 
      and changing default color.

  ; NOTE: Couldn't replicate Mono display RTE.
2008-10-17 08:17:58 +00:00
Przemyslaw Czerpak
7d0e105059 2008-10-17 03:13 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/dbgtwin.prg
    * use hb_scroll() instead of scroll()

  * harbour/source/debug/tbrwtext.prg
    ! fixed screen redrawing in horizontal movement

  * harbour/source/debug/debugger.prg
  * harbour/source/debug/dbgtinp.prg
    ! replaced GET/GETLIST objects by HbDbInput()
    ! fixed some interface incompatibilities with Clipper debugger
    * removed HB_NO_READDBG and code using GET classes - HbDbInput()
      works better and is much simpler in use.
    % do not use __GetListActive()/__GetListSetActive() - now debugger
      does not touch GET/GETLIST so it's not necessary to save/restore
      GETLIST state
      Now all references (except HBCLASS) to external .prg code in
      debugger have been removed.
      TODO: remove HB_NO_READDBG from other debugger files replacing
            code inside with __dbgInput()/HbDbInput().
            I would like to leave it for someone else and return to
            core code modifications.
2008-10-17 01:13:38 +00:00
Przemyslaw Czerpak
d16d2b1e34 2008-10-17 00:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
  * harbour/source/debug/Makefile
  + harbour/source/debug/dbgtinp.prg
    + added HbDbInput class for simple user input (GET)

  * harbour/source/debug/debugger.prg
    ! changed __dbgInput() to use HbDbInput() class instead of ACCEPT
      It fixes all bad visual end edit bad effects caused by ACCEPT.
      TODO: replace all GET references in debugger code with HbDbInput class.
2008-10-16 22:08:10 +00:00
Viktor Szakats
126b02960f 2008-10-16 14:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* common.mak
  * make_b32.bat
  * make_b32.mak
  * make_vc.bat
  * make_vc.mak
  * make_gcc.mak
    * HB_BUILD_VERBOSE=yes is now the default. If someone 
      is wanting to build Harbour from source and is bothered 
      by the compiler command-lines being shown, these can 
      be turned off with HB_BUILD_VERBOSE=no.
      These lines are IMO very important to see, which options 
      were exactly used when Harbour was built, I personally 
      archive these logs along with the builds.
2008-10-16 12:34:30 +00:00
Viktor Szakats
0817945bc4 2008-10-16 14:22 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * make_gcc.mak
  * contrib/mtpl_b32.mak
  * contrib/mtpl_gcc.mak
  * contrib/mtpl_vc.mak
    * Changed -b switch to -l-.
      -b debug mode causes more problems than good for Harbour 
      core/contrib.
2008-10-16 12:24:03 +00:00
Viktor Szakats
296b308154 2008-10-16 13:21 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * make_gcc.mak
    + Readded -b when HB_BUILD_STATIC=yes.
      Now it should work.

  * make_b32.mak
  * make_vc.mak
  * make_gcc.mak
  * contrib/mtpl_b32.mak
  * contrib/mtpl_gcc.mak
  * contrib/mtpl_vc.mak
    % Deleted -l- switch when HB_BUILD_STATIC=yes.
      Line numbers are automatically enabled when 
      -b switch is used.

  * source/debug/debugger.prg
    * Renamed getdbginput() -> __dbgInput()

  ; NOTE to TOFIX: Do we need "Mono display" these days? :)
2008-10-16 11:22:07 +00:00
Przemyslaw Czerpak
7c8bc37bdd 2008-10-16 13:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/debugger.prg
    + added __dbgAChoice() - simple AChoice() replacement which uses
      internally HBDbBrowser() class
    * replaced AChoice() with __dbgAChoice()
    * replaced @ ... SAY ... by hb_dispOutAt()
2008-10-16 11:08:37 +00:00
Viktor Szakats
31dbf52795 minor formatting to prev 2008-10-16 06:46:55 +00:00
Viktor Szakats
992016b359 2008-10-16 08:42 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/common.ch
  * contrib/hbziparc/hbziparc.prg
  * source/rtl/tclass.prg
  * source/rtl/hbini.prg
    * Minor formatting. (hb_Is*() -> hb_is*())

  * contrib/hbct/ctrand.prg
  * contrib/hbct/numconv.prg
  * contrib/hbct/cttime.prg
  * contrib/hbct/showtime.prg
  * contrib/hbwhat/hbwhat.ch
  * utils/hbrun/hbrun.prg
  * source/debug/dbgtobj.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/dbgthsh.prg
  * source/debug/dbgtarr.prg
  * source/rtl/alert.prg
  * source/rtl/tbrowse.prg
    % ValType() -> IS*() / hb_is*()

  * contrib/hbwhat/hbwhat.ch
    % Using common.ch instead of replicating logic.
    * Some formatting.

  * utils/hbtest/hbtest.prg
    * Minor formatting.
2008-10-16 06:44:26 +00:00
Viktor Szakats
d04381ed75 2008-10-16 08:10 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbwhat/wincore.prg
    ! One STATIC made THREAD STATIC.
    ! STATIC vars renamed to s_*.
2008-10-16 06:11:39 +00:00
Viktor Szakats
f9616d47a4 2008-10-16 07:52 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tpersist.prg
  * contrib/hbgd/gd.prg
  * contrib/hbgd/tests/tostring.prg
    * MemoWrit() -> hb_MemoWrit()

  * contrib/hbgd/gd.prg
    ! Fixed potential RTE.
2008-10-16 05:53:06 +00:00
Viktor Szakats
34de935979 2008-10-16 07:40 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/achoice.prg
    % Minor optimization.

  * source/rtl/achoice.prg
  * source/rtl/menuto.prg
  * source/rtl/tbrowse.prg
  * source/rtl/tclass.prg
    * Minor formatting.

  * source/rtl/tobject.prg
    * Removed '#pragma DEBUGINFO=OFF' as it's no more 
      needed.

  * source/debug/dbgthsh.prg
  * source/debug/debugger.prg
    * Copied hb_CStr() as __dbgCStr() to debug.lib.
    * Changed calls from hb_CStr() to __dbgCStr().

  * source/debug/dbgtmenu.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgwa.prg
    * Remaining BOX commands changed to hb_dispBox().

  * source/debug/dbghelp.prg
    ! Fixed one hb_dispBox() call with numeric frame parameter.
2008-10-16 05:40:51 +00:00
Przemyslaw Czerpak
97500be08b 2008-10-16 04:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/dbgbrwsr.prg
  * harbour/source/debug/dbgtwin.prg
  * harbour/source/debug/tbrwtext.prg
  * harbour/source/debug/dbgwa.prg
  * harbour/source/debug/debugger.prg
  * harbour/source/debug/dbghelp.prg
  * harbour/source/debug/dbgtmenu.prg
  * harbour/source/debug/dbgtmitm.prg
    * use hb_dispOutAt()/hb_dispBox() instead of DispOutAt()/DispBox()
    ! fixed using ADel()/AIns() with xHarbour extended parameters
    ! fixed RT debugger errors caused by missing ::nTabWidth and ::colorSpec
      in HBBrwText class
    ! fixed processing source code with TABs (chr(9))
    ; TOFIX: "Mono Display" causes RT error due to missing color index
             range checking. It also does not change all colors immediately
    ; TOFIX: getdbginput(): writing out of window area, scrolling internal
             buffer, cursor navigation, interrupting by ESC
2008-10-16 02:24:29 +00:00
Przemyslaw Czerpak
45c437c917 2008-10-16 00:42 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/dbgtobj.prg
  * harbour/source/debug/dbgbrwsr.prg
  * harbour/source/debug/dbgtwin.prg
  * harbour/source/debug/dbgmenu.prg
  * harbour/source/debug/dbgthsh.prg
  * harbour/source/debug/tbrwtext.prg
  * harbour/source/debug/debugger.prg
  * harbour/source/debug/dbgtarr.prg
  * harbour/source/debug/dbgtmenu.prg
  * harbour/source/debug/dbgtmitm.prg
    * use #define HB_CLS_NOTOBJECT to disable inheritance from HBObject
      in internal debugger classes.
      Here is complete list of other .prg functions still used by hbdebug
      library:
         GET, __GETLISTACTIVE, __GETLISTSETACTIVE, HBGETLIST, ACHOICE,
         HB_CSTR, HBCLASS
2008-10-15 22:42:54 +00:00
Przemyslaw Czerpak
b8bfdd4d75 2008-10-15 21:33 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/tbrwtext.prg
    ! refresh rows after active line changing for proper color updating
2008-10-15 19:33:56 +00:00
Przemyslaw Czerpak
bc1ec5f01a 2008-10-15 20:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/tbrwtext.prg
    ! fixed vertical navigation to be compatible with old debugger
      and Clipper
    ! fixed horizontal scrolling to the size of maximal line
      not to the size of current line
    % use single call to hb_aTokens() to convert source code into array
2008-10-15 18:03:34 +00:00
Przemyslaw Czerpak
7b5f7784fb 2008-10-15 19:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/debug/dbgbrwsr.prg
    ! added missing #include "common.ch"
    ! added missing colorBlock variable in HBDBColumn class
    % replaced .prg wrappers for type checking with native
      harbour class type validation
2008-10-15 17:08:21 +00:00
Viktor Szakats
a11e7bdfa2 2008-10-15 18:12 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/tbrwtext.prg
    * Replaced with new implementation from Lorenzo Fiorini.
      Sent to the list on 2008.07.26.
    ; NOTE: Some issue were reported with this, but it's again 
            a step into the right direction, please try to update 
            this code to better resemble to Clipper and to fix 
            possible error. Thanks.
    ; Remaining RTL .prg dependencies:
      - ACHOICE() (just one call)

  * source/debug/debugger.prg
    * Using hb_MemoWrit() instead of MemoWrit()

  * source/rtl/achoice.prg
    % Minor opt.
2008-10-15 16:29:47 +00:00
Viktor Szakats
57e094986e 2008-10-15 17:47 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/dbgtobj.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/dbgthsh.prg
  * source/debug/debugger.prg
  * source/debug/dbghelp.prg
  * source/debug/dbgtarr.prg
  * source/debug/dbgwa.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgtmenu.prg
    + Added minimal Alert() clone, named ___dbgAlert().
    + Replaced Alert() with __dbgAlert() calls.
    + Added minimal TBColumn() implementation, named HBDbColumn().
    + Replaced TBColumnNew() with HBDbColumnNew() calls.
    + Enabled HB_NO_READDBG for all sources. This isn't 
      perfect, just a step into the right direction.
    ; Please test above modifications.
    ; Remaining RTL .prg dependencies:
      - HBEDITOR()
      - ACHOICE()

  * source/debug/dbgwa.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgtmenu.prg
    * Formatted to Harbour standards.

  * source/rtl/tobject.prg
  * source/rtl/tclass.prg
    + Added '#pragma DEBUGINFO=OFF'.
    ; NOTE: Maybe it'd be better to rewrite these in .c, 
            also for speed. If possible.

  * source/rtl/alert.prg
    ! Minor typo.
2008-10-15 15:55:11 +00:00
Przemyslaw Czerpak
3ed8136c80 2008-10-15 17:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
  * harbour/source/vm/estack.c
  * harbour/source/vm/hvm.c
  * harbour/source/debug/dbgentry.c
  * harbour/source/debug/debugger.prg
    * moved debugRequest flag and debugger internal structure
      pointer to HVM stack
    * allocate debugger internal structure dynamically in thread
      thread local area when PCODE with debug information is executed
    * changed STATIC s_oDebugger to THREAD STATIC
    * send HB_DBG_VMQUIT after each thread termination when
      debugger is activated
      Now debugger can be used in MT programs and each thread can be
      debugged separately (each has its own debuger). Please only
      remember that thread sharing console window can overwrite other
      threads debugger screen. There is also one limitation which I'll
      try to remove later: only main thread debugger keeps information
      about file wide STATIC names and line numbers with possible break
      point places. This data should be shared between debuggers.
2008-10-15 15:51:02 +00:00
Przemyslaw Czerpak
11fe9fff36 2008-10-15 13:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/vm/hvm.c
  * harbour/source/vm/estack.c
    * disabled all debugger related bindings and variables when
      HB_NO_DEBUG macro is set
    % moved s_fDebuging to HVM function stack frame to eliminate
      saving/restoring this variable in each function/message call
      Note: if you think it's good to block linking .prg code compiled
            with -b (debugger support) with HVM compiled with HB_NO_DEBUG
            then it's enough to disable whole hb_dbg_SetEntry() function
            in hvm.c when HB_NO_DEBUG macro is set.
2008-10-15 11:32:43 +00:00
Viktor Szakats
f9eb741d28 2008-10-15 10:16 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* doc/dirstruc.txt
    * Updated.
2008-10-15 08:16:27 +00:00
Viktor Szakats
d54f03c81e 2008-10-15 10:09 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * make_gcc.mak
    * Removed disabling -b for non-debug builds.
    ; We aim to remove RTL .prg dependencies from hbdebug.lib, 
      either by local implementation, .c rewrite, or force 
      disabling debug mode in more core files.
      Until this happens, one will have to be careful with 
      using -b switch to compile Harbour. These are the core .prg 
      modules currently used by hbdebug.lib:
      - HBGETLIST(), GET(), __GET(), __GETLISTACTIVE(), __GETLISTSETACTIVE(), READINSERT(), READMODAL()
      - HBCLASS()
      - HBOBJECT()
      - HBEDITOR()
      - TBCOLUMNNEW()
      - ACHOICE()
      - ALERT()

  * source/debug/dbgtobj.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgmenu.prg
  * source/debug/dbgthsh.prg
  * source/debug/tbrwtext.prg
  * source/debug/dbgwa.prg
  * source/debug/debugger.prg
  * source/debug/dbghelp.prg
  * source/debug/dbgtarr.prg
  * source/debug/dbgtmenu.prg
  * source/debug/dbgtmitm.prg
    + Readded '#pragma DEBUGINFO=OFF'.
2008-10-15 08:13:42 +00:00
Viktor Szakats
9bb2620762 2008-10-15 02:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/langapi.c
  * utils/hbtest/rt_class.prg
    * Cleanup to previous modif.
2008-10-15 00:34:00 +00:00
Viktor Szakats
5c252e761e 2008-10-15 01:56 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/dbgtobj.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgmenu.prg
  * source/debug/dbgthsh.prg
  * source/debug/tbrwtext.prg
  * source/debug/dbgwa.prg
  * source/debug/debugger.prg
  * source/debug/dbghelp.prg
  * source/debug/dbgtarr.prg
  * source/debug/dbgtmenu.prg
  * source/debug/dbgtmitm.prg
    - Removed '#pragma DEBUGINFO=OFF'. See solution below.

  * make_b32.mak
  * make_gcc.mak
  * make_vc.mak
    * Forcing -b- (disabling debug info) for all core 
      .prg functions. Compiling anything in core with 
      -b would cause infinite loops, when trying to use 
      the debugger.
      QUESTION: Is HB_NO_READDBG still needed?
2008-10-14 23:59:06 +00:00
Viktor Szakats
2c241eb512 2008-10-15 01:40 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
- lib/b32
  - lib/vc
  - bin/b32
  - bin/vc
  - obj/b32
  - obj/vc
    - Removed dirs from SVN. They are automatically created 
      by the build scripts.
2008-10-14 23:42:47 +00:00
Przemyslaw Czerpak
caadc6fa2e 2008-10-15 01:39 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/hvm.c
    ! clear HVM stack return value before use in initialization code
2008-10-14 23:39:35 +00:00
Viktor Szakats
cbde426c34 2008-10-15 01:04 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/debug/dbgtobj.prg
  * source/debug/dbgbrwsr.prg
  * source/debug/dbgtwin.prg
  * source/debug/dbgmenu.prg
  * source/debug/dbgthsh.prg
  * source/debug/tbrwtext.prg
  * source/debug/dbgwa.prg
  * source/debug/debugger.prg
  * source/debug/dbghelp.prg
  * source/debug/dbgtarr.prg
  * source/debug/dbgtmenu.prg
  * source/debug/dbgtmitm.prg
    + Added '#pragma DEBUGINFO=OFF' to debugger 
      sources. Otherwise compiling full Harbour with 
      -b was causing an infinite loop. (this is now 
      the default when building with 
      'HB_BUILD_DEBUG=yes'.

  * source/rdd/nulsys/nulsys.c
    ! Added DBSELECTAREA(), DBSTRUCT(), HEADER(), 
      RECSIZE(), LUPDATE()
      so that programs can be built with -b and 
      hbnulrdd.lib. hbdebug.lib/dgbwa.prg uses 
      symbols above.
2008-10-14 23:20:31 +00:00
Przemyslaw Czerpak
b0a88e24ff 2008-10-15 00:31 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbxvm.h
  * harbour/source/vm/hvm.c
    - removed to unused functions

  * harbour/source/vm/thread.c
    - removed unnecessary casting
2008-10-14 22:32:03 +00:00
Viktor Szakats
fe54bdf114 2008-10-14 20:36 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/dbedit.prg
  * source/rtl/tgetint.prg
  * source/rtl/tlabel.prg
  * source/rtl/treport.prg
    * Changed '&( "{||" + c + "}" )' expressions to 
      hb_macroBlock() calls.
      To me these places seemed safe to change, but 
      please verify me.

  * source/rtl/alert.prg
  * source/rtl/tbcolumn.prg
  * source/rtl/tget.prg
    * Minor formatting.
2008-10-14 18:37:28 +00:00
Viktor Szakats
c9dc573359 2008-10-14 19:23 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbextern.ch
    + Added hb_macroBlock()

  * source/rtl/langapi.c
    * One error text changed to be more precise.

  * doc/gmake.txt
  * bin/bld.bat
  * contrib/hbbtree/tests/bld_vc.bat
  * contrib/examples/pp/bld_vc.bat
  * contrib/examples/guestbk/bld_vc.bat
  * contrib/examples/pe/bld_vc.bat
  * contrib/examples/dbu/bld_vc.bat
  * contrib/examples/hscript/bld_vc.bat
  * utils/hbdoc/bld_vc.bat
  * utils/hbmake/bld_vc.bat
  * utils/hbmake/hbmake.prg
    - Removed MSVC -TP switches.
2008-10-14 17:26:24 +00:00
Przemyslaw Czerpak
d8af011440 2008-10-14 11:51 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/vm/macro.c
    * added missing const attribute to hb_macroCompile() parameter
    + added new .prg function:
         hb_macroBlock( <cExpr> ) -> <bCode>
      which converts macro expression to codeblock. New codeblocks
      do not inherit hb_macroBlock() caller scope/attributes.
2008-10-14 09:51:37 +00:00
Viktor Szakats
40f6d73c31 2008-10-14 08:44 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/examples/dbu/bld_vc.bat
    ! Removed -TP C option.
2008-10-14 06:46:32 +00:00
Przemyslaw Czerpak
15b31b81ae 2008-10-14 00:02 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dynlibhb.c
    ! fixed HB_LIBFREE() return value - thanks to Enrico
2008-10-13 22:02:59 +00:00
Viktor Szakats
005bc1d9f7 2008-10-13 22:27 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* tests/transtst.prg
  * doc/en/string.txt
  * doc/en/compiler.txt
  * doc/en/macro.txt
  * doc/en/browse.txt
  * doc/en/binnum.txt
  * doc/es/macro.txt
  * doc/es/browse.txt
  * doc/es/binnum.txt
  * doc/transfrm.txt
  * doc/whatsnew.txt
  * include/hbclass.ch
  * include/hbmacro.ch
  * include/hbexprb.c
  * ChangeLog
  * contrib/hbvpdf/hbvpdft.prg
  * contrib/hbwhat/import.ch
  * source/vm/macro.c
  * source/rtl/tobject.prg
  * source/rtl/tthreadx.prg
  * source/rtl/transfrm.c
  * source/rtl/tget.prg
  * source/rtl/isprint.c
  * source/rtl/tbrowse.prg
  * source/rdd/wacore.c
  * source/rdd/dbdetach.c
  * utils/hbtest/rt_trans.prg
    * Xbase++ name references cleaned.

  * common.mak
  * source/rdd/Makefile
  * source/rdd/dbdetach.c
  + source/rdd/dbdetacx.c
    * Moved XBase++ compatibility functions to separate file.
2008-10-13 20:33:26 +00:00
Przemyslaw Czerpak
b3683d7ffb 2008-10-13 21:44 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/win_tole.prg
    ! Fixed assignment to oErr:Operation from "+" to "-" in
      OleValueMinus() method - fix by Luis Krause Mantilla borrowed
      from xHarbour
2008-10-13 19:45:01 +00:00
Przemyslaw Czerpak
f97d4e1cda 2008-10-13 21:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbwince.h
  * harbour/source/common/hbwince.c
    ! fixed LastError overwriting inside WinCE wrapper functions
2008-10-13 19:30:38 +00:00
Przemyslaw Czerpak
b9e2e7b6f0 2008-10-13 20:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rdd/wacore.c
    ; updated comments about xbase++ behavior in dbRelease()

  * harbour/include/hbvm.h
  * harbour/source/vm/hvm.c
  * harbour/source/vm/dynlibhb.c
  * harbour/source/vm/runner.c
    ! added MT protection for HB_LIBLOAD()/HB_LIBFREE() and
      HB_HRBLOAD()/HB_HRBUNLOAD(). Please remember that you should
      not use any external LoadLibrary() functions because they are
      not protected for clean PCODE modules loading/unloading even
      in ST mode. Using them can cause HVM internal structure corruption.
      If we have such functions in contrib then they should be redirected
      to our HVM ones.
      There is still one problem in MT mode which has to be resolved yet.
      When dynamic library containing PCODE using static variables
      is loaded 1-st time then it will force resizing of internal array
      with static variables. If in exactly the same moment some other
      thread operates on static variable then it may cause corruption.
      To resolve this problem we will have to divide continuous memory
      block common for all modules where we store all static variables
      into separated blocks bound with each PCODE module (symbol table).

  * harbour/source/vm/dynlibhb.c
    + added support for DLL loading/unloading in OS2 builds.
      Based on xHarbour code by Maurilio Longo - please test.
2008-10-13 18:21:42 +00:00
Viktor Szakats
52b81aace8 2008-10-13 20:19 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbmisc/strfmt.c
    ! Fixed GPF when non-string was passed as 
      first parameter.
2008-10-13 18:19:50 +00:00
Przemyslaw Czerpak
7d8c51e71a 2008-10-13 18:01 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/thread.c
    + added small description for hb_threadOnce() .prg function

  * harbour/include/hbthread.h
    ! do not set TLS in POCC and XCC builds when _MSC_VER macro is set
      This compilers also have this macro but dllspec( thread) does
      not work for them (at least in version 4.50.15)

  * harbour/utils/hbtest/rt_hvm.prg
    + added few tests which exploit by DMC bug. Be careful with
      this compiler. In some cases it gives buggy final code, f.e.
      try this:

            #include <stdio.h>
            typedef struct
            {
               double         dd;
               long long int  ll;
            } UN;
            const char * cmp( UN * pU )
            {
               return pU->dd >= pU->ll ? "OK" : "ERRROR";
            }
            int main( void )
            {
               UN u = { 10.50, 10 };
               printf( "%s\n", cmp( &u ) );
               return 0;
            }

      The same bug can be exploited also by final Harbour binaries
      compiled by DMC in code like:

         ? iif( 10.50 >= 10, "OK", "ERROR" )

      I used DMC 8.42n. As long as such things will not be fixed by
      DMC developers this compiler is not supported by Harbour and
      reported problems with DMC Harbour builds will have to be
      ignored by us.
2008-10-13 16:01:44 +00:00
Przemyslaw Czerpak
b3ee472fee 2008-10-13 16:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbclass.ch
  * harbour/source/vm/classes.c
  * harbour/source/rtl/tobject.prg
  * harbour/source/rtl/tclass.prg
    ! fixed race condition when class function is called 1-st time
      and new class is created. It was possible that more then one
      thread execute this function simultaneously and two classes
      identical classes but with different handles were created
      and registered in HVM

  * harbour/contrib/xhb/xhbcomp.prg
    * updated hack with optional inheritance for new class code
2008-10-13 14:35:07 +00:00
Viktor Szakats
d43cc93d44 TOMERGE added. 2008-10-13 13:11:33 +00:00