2008-08-16 02:19 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbmzip/hbmzip.c
! Fixed potential GPF in executable type detection.
Fixes GCC 4.3.1 warnings in openSUSE 11.
* tests/debugtst.prg
* tests/funcarr.prg
* tests/inherit.prg
* tests/objarr.prg
* tests/objasign.prg
* doc/en/hvm.txt
* doc/es/hvm.txt
* include/hbextern.ch
* source/vm/debug.c
* source/vm/hvm.c
* source/debug/dbgtobj.prg
* source/debug/debugger.prg
* source/rtl/altd.prg
* Harbour level HB_DBG_*() functions renamed to __DBG*() to
reflect their internal nature.
- Removed old __VM*() synonyms to Harbour level __DBG*() functions.
INCOMPATIBLE.
! Fixed a few minor doc bugs along the way.
This commit is contained in:
@@ -8,6 +8,30 @@
|
||||
2008-12-31 13:59 UTC+0100 Foo Bar <foo.bar@foobar.org>
|
||||
*/
|
||||
|
||||
2008-08-16 02:19 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
|
||||
* contrib/hbmzip/hbmzip.c
|
||||
! Fixed potential GPF in executable type detection.
|
||||
Fixes GCC 4.3.1 warnings in openSUSE 11.
|
||||
|
||||
* tests/debugtst.prg
|
||||
* tests/funcarr.prg
|
||||
* tests/inherit.prg
|
||||
* tests/objarr.prg
|
||||
* tests/objasign.prg
|
||||
* doc/en/hvm.txt
|
||||
* doc/es/hvm.txt
|
||||
* include/hbextern.ch
|
||||
* source/vm/debug.c
|
||||
* source/vm/hvm.c
|
||||
* source/debug/dbgtobj.prg
|
||||
* source/debug/debugger.prg
|
||||
* source/rtl/altd.prg
|
||||
* Harbour level HB_DBG_*() functions renamed to __DBG*() to
|
||||
reflect their internal nature.
|
||||
- Removed old __VM*() synonyms to Harbour level __DBG*() functions.
|
||||
INCOMPATIBLE.
|
||||
! Fixed a few minor doc bugs along the way.
|
||||
|
||||
2008-08-14 18:15 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
|
||||
* ChangeLog
|
||||
+ Added entry for yesterday's syncing/tagging.
|
||||
|
||||
@@ -588,11 +588,11 @@ static ULONG hb_translateExtAttr( const char* szFileName, ULONG ulExtAttr )
|
||||
iLen = ( int ) strlen( szFileName );
|
||||
if( iLen > 4 )
|
||||
{
|
||||
if( hb_stricmp( szFileName - 4, ".exe" ) == 0 ||
|
||||
hb_stricmp( szFileName - 4, ".com" ) == 0 ||
|
||||
hb_stricmp( szFileName - 4, ".bat" ) == 0 ||
|
||||
hb_stricmp( szFileName - 4, ".cmd" ) == 0 ||
|
||||
hb_stricmp( szFileName - 3, ".sh" ) == 0 )
|
||||
if( hb_stricmp( szFileName + iLen - 4, ".exe" ) == 0 ||
|
||||
hb_stricmp( szFileName + iLen - 4, ".com" ) == 0 ||
|
||||
hb_stricmp( szFileName + iLen - 4, ".bat" ) == 0 ||
|
||||
hb_stricmp( szFileName + iLen - 4, ".cmd" ) == 0 ||
|
||||
hb_stricmp( szFileName + iLen - 3, ".sh" ) == 0 )
|
||||
{
|
||||
ulExtAttr |= 0x00490000; /* --x--x--x */
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
* Documentation for: PROCLINE(),PROCFILE(),PROCNAME()
|
||||
*
|
||||
* Copyright 1999 Eddie Ruina
|
||||
* Documentation for: __VMVARLGET()
|
||||
* Documentation for: __DBGVMVARLGET()
|
||||
*
|
||||
* Copyright 1999 Chen Kedem <niki@actcom.co.il>
|
||||
* Documentation for: CLIPINIT(), __SETHELPK()
|
||||
@@ -383,13 +383,13 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* __VMVARLGET()
|
||||
* __DBGVMVARLGET()
|
||||
* $CATEGORY$
|
||||
* Variable Management
|
||||
* $ONELINER$
|
||||
* Retrive a local variable from a procedure level
|
||||
* $SYNTAX$
|
||||
* __VMVARLGET( <nProcLevel>, <nLocal> )
|
||||
* __DBGVMVARLGET( <nProcLevel>, <nLocal> )
|
||||
* $ARGUMENTS$
|
||||
* <nProcLevel> Is the procedure level, same as used in ProcName()
|
||||
* and ProcLine(), from which a local variable containts is going to
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
* Copyright 2000 Alejandro de G rate <alex_degarate@hotmail.com>
|
||||
* Documentaci¢n en Espa¤ol de:
|
||||
* PROCNAME(), PROCLINE(), PROCFILE(), HB_PVALUE(), PCOUNT()
|
||||
* __QUIT(), CLIPINIT(), __SetHelpK(), BREAK(), DO(), __VMVARLGET()
|
||||
* __QUIT(), CLIPINIT(), __SetHelpK(), BREAK(), DO(), __DBGVMVARLGET()
|
||||
*
|
||||
* Copyright 1999 Jose Lanin <dezac@corevia.com>
|
||||
* Documentaci¢n en Ingl‚s de: PROCLINE(),PROCFILE(),PROCNAME()
|
||||
*
|
||||
* Copyright 1999 Eddie Ruina
|
||||
* Documentaci¢n en Ingl‚s de: __VMVARLGET()
|
||||
* Documentaci¢n en Ingl‚s de: __DBGVMVARLGET()
|
||||
*
|
||||
* Copyright 1999 Chen Kedem <niki@actcom.co.il>
|
||||
* Documentaci¢n en Ingl‚s de: CLIPINIT(), __SETHELPK()
|
||||
@@ -417,13 +417,13 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* __VMVARLGET()
|
||||
* __DBGVMVARLGET()
|
||||
* $CATEGORY$
|
||||
* Variable Management
|
||||
* $ONELINER$
|
||||
* Obtiene una variable LOCAL de un nivel de procedimiento
|
||||
* $SYNTAX$
|
||||
* __VMVARLGET( <nProcLevel>, <nLocal> )
|
||||
* __DBGVMVARLGET( <nProcLevel>, <nLocal> )
|
||||
* $ARGUMENTS$
|
||||
* <nProcLevel> Es el nivel de procedimiento, el mismo que el usado
|
||||
* en PROCNAME() y PROCLINE(), desde el cual una variable
|
||||
|
||||
@@ -12,7 +12,7 @@ General
|
||||
- Cleanup of MSVC C mode static initialization code.
|
||||
- Changed internal representation for file attributes from USHORT to ULONG.
|
||||
- Fixed memory leak in -gw mode.
|
||||
- Portability fixes (Unicode, 64 bit, Pelles C 32/64 bit, WinCE, eVC4, XCC,
|
||||
- Portability fixes (Unicode, 64-bit, Pelles C 32/64-bit, WinCE, eVC4, XCC,
|
||||
Linux mouse detection, OpenWatcom).
|
||||
- Deployment fixes.
|
||||
- harbour.dll related fixes.
|
||||
@@ -22,8 +22,8 @@ General
|
||||
Core
|
||||
=============================
|
||||
- Fixed __HARBOUR__ macro on .prg level, when compiled with -u switch.
|
||||
- HB_ARRAYID() moved to xhb.lib, synced with xhb and made 64 bit compatible.
|
||||
- File handle usage cleanup and 64 bit compatibility.
|
||||
- HB_ARRAYID() moved to xhb.lib, synced with xhb and made 64-bit compatible.
|
||||
- File handle usage cleanup and 64-bit compatibility.
|
||||
- Automatic destructors for .hrb modules.
|
||||
- Added passing non-string parameters to .hrb functions.
|
||||
- Fixed casting for indexes with key length greater than 196 bytes
|
||||
@@ -74,11 +74,11 @@ Contrib
|
||||
- hbcurl fixes, now using Harbour memory allocation functions,
|
||||
now older libcurl versions are supported as well, CURL_EASY_GETINFO()
|
||||
fixed for unsupported info types.
|
||||
- 64bit compatibility fixes. hbmysql/SQLLISTF() function now
|
||||
- 64-bit compatibility fixes. hbmysql/SQLLISTF() function now
|
||||
uses pointer instead of numeric type.
|
||||
- Fixed adordd to be _SET_EXACT independent.
|
||||
- Fixed hbodbc tests to work out of the box.
|
||||
- hbw32, hbodbc 64 bit fixes.
|
||||
- hbw32, hbodbc 64-bit fixes.
|
||||
- Fixed rddads to behave Clipper-like when trying to write
|
||||
when on EOF position.
|
||||
- Added OS version detection functions to hbw32.
|
||||
@@ -90,9 +90,9 @@ Contrib
|
||||
|
||||
Known build issues
|
||||
=============================
|
||||
- Harbour with MSVC in 64 bit will only build in C++ mode.
|
||||
- Harbour with MSVC in 64-bit will only build in C++ mode.
|
||||
Use 'set HB_BUILD_MODE=cpp' and 'make_vc.bat'.
|
||||
- Windows 64 bit builds may generate a large amount of type
|
||||
- Windows 64-bit builds may generate a large amount of type
|
||||
conversion warnings. This is currently normal and will be
|
||||
addressed in a future version.
|
||||
- Contrib hbfimage won't currently compile on Linux systems
|
||||
@@ -117,7 +117,7 @@ General
|
||||
other.
|
||||
- Reviewed and fixed platforms issues and compiler warnings
|
||||
for the contrib area in most part.
|
||||
- Enhanced contrib 64bit Windows compatibility.
|
||||
- Enhanced contrib 64-bit Windows compatibility.
|
||||
|
||||
Core
|
||||
=============================
|
||||
@@ -150,7 +150,7 @@ Contrib
|
||||
- Added SQL_SPRINTF() to hbmisc contrib.
|
||||
- Enhanced STRFORMAT() in hbmisc contrib.
|
||||
- Enabled hbgf contrib for all (Linux, OS/2, Windows) platforms.
|
||||
- Due to fixing 64bit portability problems, some functions became
|
||||
- Due to fixing 64-bit portability problems, some functions became
|
||||
incompatible, because numeric addresses have been converted to
|
||||
pointer types:
|
||||
- hbwhat32: wndproc/dlgproc parameters in related functions.
|
||||
@@ -192,7 +192,7 @@ Portability
|
||||
WinCE.
|
||||
- added support for MS-Windows UNICDE builds.
|
||||
- added support for shared libraries (.sl) in HPUX builds
|
||||
- added large file support (64bit) in HPUX builds
|
||||
- added large file support (64-bit) in HPUX builds
|
||||
- disabled in default BSD* builds DOS/Windows DENY_* flags emulation
|
||||
implemented by BSD locks - tests on FreeBSD 6.2 and MacOSX shows
|
||||
that it badly interacts with POSIX locks and it's possible to create
|
||||
@@ -339,7 +339,7 @@ RTL
|
||||
- added _SET_TRIMFILENAME - when enabled low level hb_fs*() functions strip
|
||||
trailing and leading spaces from file names to emulate DOS like behavior
|
||||
- added support for _SET_DEFEXTENSIONS to native all RDDs
|
||||
- many fixes in transform() function and fixed 64bit integer transformation.
|
||||
- many fixes in transform() function and fixed 64-bit integer transformation.
|
||||
Now transform() passes our all compatibility tests
|
||||
- added undocumented Clipper error functions
|
||||
- added functions to manage .ini files: HB_INI*()
|
||||
@@ -700,7 +700,7 @@ API
|
||||
- Optimized __CLSADDMSG() to call hb_parc() only once instead of 25
|
||||
times for most cases.
|
||||
- Synced file IO with xHarbour, it fixed some problems, added some
|
||||
missing functionality and long (64bit) file support for Windows.
|
||||
missing functionality and long (64-bit) file support for Windows.
|
||||
- hb_DiskSpace() changed to not give a runtime error in case of any
|
||||
error, but set the FError() value instead.
|
||||
- Added C -> OS file error translations - not perfect but better than
|
||||
@@ -780,7 +780,7 @@ RDD
|
||||
- Fixed ordKeyPos() for records out of scope.
|
||||
- Implemented RDD level transforms (COPY TO/APPEND FROM).
|
||||
- Long file support for all native RDDs. Now the maximum file size
|
||||
is reduced only by its structure if OS/file system supports 64bit
|
||||
is reduced only by its structure if OS/file system supports 64-bit
|
||||
file IO, f.e. for DBF it's 2^32 records. For memos it's:
|
||||
2^32 * MemoBlockSize, etc.
|
||||
- Synhronize RDD code with xHarbour.
|
||||
@@ -870,7 +870,7 @@ The compiler
|
||||
Symbol of function name never share a symbol of variable
|
||||
Symbol for INIT/EXIT procedure has now '$' suffix - this means that
|
||||
such procedures cannot be called from user code (Clipper compatible)
|
||||
- Harbour now Run on 64 bits !
|
||||
- Harbour now Run on 64-bits !
|
||||
- Some small optimizations in harbour/source/vm/itemapi.c
|
||||
|
||||
The runtime modules
|
||||
@@ -911,7 +911,7 @@ The runtime modules
|
||||
- Add the missing Greek language and codepage files.
|
||||
- Added Spanish Modern codepage
|
||||
- Synced HB CDP API with xHarbour - added basic Unicode support
|
||||
- Added functions hb_fsLockLarge() and hb_fsSeekLarge() which uses 64bit
|
||||
- Added functions hb_fsLockLarge() and hb_fsSeekLarge() which uses 64-bit
|
||||
offsets in filesys.c for files larger than 2Gb
|
||||
|
||||
RDD
|
||||
|
||||
@@ -545,22 +545,22 @@ EXTERNAL __EINSTVAR53
|
||||
|
||||
/* The debugger interface */
|
||||
|
||||
EXTERNAL HB_DBG_INVOKEDEBUG
|
||||
EXTERNAL HB_DBG_VMPARLLIST
|
||||
EXTERNAL HB_DBG_VMSTKGCOUNT
|
||||
EXTERNAL HB_DBG_VMSTKGLIST
|
||||
EXTERNAL HB_DBG_VMSTKLCOUNT
|
||||
EXTERNAL HB_DBG_VMSTKLLIST
|
||||
EXTERNAL HB_DBG_VMVARGGET
|
||||
EXTERNAL HB_DBG_VMVARGLIST
|
||||
EXTERNAL HB_DBG_VMVARGSET
|
||||
EXTERNAL HB_DBG_VMVARLGET
|
||||
EXTERNAL HB_DBG_VMVARLSET
|
||||
EXTERNAL HB_DBG_VMVARSGET
|
||||
EXTERNAL HB_DBG_VMVARSSET
|
||||
EXTERNAL HB_DBG_VMVARSLEN
|
||||
EXTERNAL HB_DBG_VMVARSLIST
|
||||
EXTERNAL HB_DBG_PROCLEVEL
|
||||
EXTERNAL __DBGINVOKEDEBUG
|
||||
EXTERNAL __DBGVMPARLLIST
|
||||
EXTERNAL __DBGVMSTKGCOUNT
|
||||
EXTERNAL __DBGVMSTKGLIST
|
||||
EXTERNAL __DBGVMSTKLCOUNT
|
||||
EXTERNAL __DBGVMSTKLLIST
|
||||
EXTERNAL __DBGVMVARGGET
|
||||
EXTERNAL __DBGVMVARGLIST
|
||||
EXTERNAL __DBGVMVARGSET
|
||||
EXTERNAL __DBGVMVARLGET
|
||||
EXTERNAL __DBGVMVARLSET
|
||||
EXTERNAL __DBGVMVARSGET
|
||||
EXTERNAL __DBGVMVARSSET
|
||||
EXTERNAL __DBGVMVARSLEN
|
||||
EXTERNAL __DBGVMVARSLIST
|
||||
EXTERNAL __DBGPROCLEVEL
|
||||
|
||||
/* RDD related symbols */
|
||||
|
||||
|
||||
@@ -355,12 +355,12 @@ STATIC FUNCTION __dbgObjGetValue( oObject, cVar, lCanAcc )
|
||||
LOCAL oErr
|
||||
|
||||
BEGIN SEQUENCE WITH {|| break() }
|
||||
xResult := HB_DBG_SENDMSG( nProcLevel, oObject, cVar )
|
||||
xResult := __dbgSENDMSG( nProcLevel, oObject, cVar )
|
||||
lCanAcc := .T.
|
||||
RECOVER
|
||||
BEGIN SEQUENCE WITH {|oErr| break( oErr ) }
|
||||
/* Try to access variables using class code level */
|
||||
xResult := HB_DBG_SENDMSG( 0, oObject, cVar )
|
||||
xResult := __dbgSENDMSG( 0, oObject, cVar )
|
||||
lCanAcc := .T.
|
||||
RECOVER USING oErr
|
||||
xResult := oErr:description
|
||||
@@ -376,11 +376,11 @@ STATIC FUNCTION __dbgObjSetValue( oObject, cVar, xValue )
|
||||
LOCAL oErr
|
||||
|
||||
BEGIN SEQUENCE WITH {|| break() }
|
||||
HB_DBG_SENDMSG( nProcLevel, oObject, "_" + cVar, xValue )
|
||||
__dbgSENDMSG( nProcLevel, oObject, "_" + cVar, xValue )
|
||||
RECOVER
|
||||
BEGIN SEQUENCE WITH {|oErr| break( oErr ) }
|
||||
/* Try to access variables using class code level */
|
||||
HB_DBG_SENDMSG( 0, oObject, "_" + cVar, xValue )
|
||||
__dbgSENDMSG( 0, oObject, "_" + cVar, xValue )
|
||||
RECOVER USING oErr
|
||||
Alert( oErr:description )
|
||||
END SEQUENCE
|
||||
|
||||
@@ -114,7 +114,7 @@ PROCEDURE __dbgAltDEntry()
|
||||
where ALTD() was called can have no debugger info - stop
|
||||
on first LINE with debugged info
|
||||
*/
|
||||
hb_DBG_INVOKEDEBUG( Set( _SET_DEBUG ) )
|
||||
__dbgINVOKEDEBUG( Set( _SET_DEBUG ) )
|
||||
|
||||
RETURN
|
||||
|
||||
@@ -126,7 +126,7 @@ PROCEDURE __dbgEntry( nMode, uParam1, uParam2, uParam3, uParam4, uParam5 )
|
||||
DO CASE
|
||||
CASE nMode == HB_DBG_GETENTRY
|
||||
|
||||
hb_DBG_SetEntry()
|
||||
__dbgSetEntry()
|
||||
|
||||
CASE nMode == HB_DBG_ACTIVATE
|
||||
|
||||
@@ -140,7 +140,7 @@ PROCEDURE __dbgEntry( nMode, uParam1, uParam2, uParam3, uParam4, uParam5 )
|
||||
s_oDebugger:aBreakPoints := uParam5
|
||||
IF lStartup
|
||||
IF s_oDebugger:lRunAtStartup
|
||||
hb_DBG_SetGo( uParam1 )
|
||||
__dbgSetGo( uParam1 )
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -648,7 +648,7 @@ METHOD CallStackProcessKey( nKey ) CLASS HBDebugger
|
||||
METHOD CodeblockTrace()
|
||||
|
||||
::oPullDown:GetItemByIdent( "CODEBLOCK" ):checked := ::lCBTrace := ! ::lCBTrace
|
||||
hb_DBG_SetCBTrace( ::pInfo, ::lCBTrace )
|
||||
__dbgSetCBTrace( ::pInfo, ::lCBTrace )
|
||||
|
||||
RETURN NIL
|
||||
|
||||
@@ -1234,7 +1234,7 @@ METHOD GetExprValue( xExpr, lValid ) CLASS HBDebugger
|
||||
lValid := .F.
|
||||
|
||||
BEGIN SEQUENCE
|
||||
xResult := hb_DBG_GetExprValue( ::pInfo, xExpr, @lValid )
|
||||
xResult := __dbgGetExprValue( ::pInfo, xExpr, @lValid )
|
||||
IF !lValid
|
||||
xResult := "Syntax error"
|
||||
ENDIF
|
||||
@@ -1253,7 +1253,7 @@ METHOD GetExprValue( xExpr, lValid ) CLASS HBDebugger
|
||||
|
||||
|
||||
METHOD GetSourceFiles() CLASS HBDebugger
|
||||
RETURN hb_DBG_GetSourceFiles( ::pInfo )
|
||||
RETURN __dbgGetSourceFiles( ::pInfo )
|
||||
|
||||
|
||||
METHOD Global() CLASS HBDebugger
|
||||
@@ -1270,7 +1270,7 @@ METHOD Go() CLASS HBDebugger
|
||||
ENDIF
|
||||
::RestoreAppScreen()
|
||||
::RestoreAppState()
|
||||
hb_DBG_SetGo( ::pInfo )
|
||||
__dbgSetGo( ::pInfo )
|
||||
::Exit()
|
||||
RETURN NIL
|
||||
|
||||
@@ -1329,7 +1329,7 @@ METHOD HandleEvent() CLASS HBDebugger
|
||||
IF ::nSpeed != 0
|
||||
Inkey( ::nSpeed / 10 )
|
||||
ENDIF
|
||||
IF hb_DBG_INVOKEDEBUG() //NextKey() == K_ALT_D
|
||||
IF __dbgINVOKEDEBUG() //NextKey() == K_ALT_D
|
||||
::lAnimate := .F.
|
||||
ELSE
|
||||
::Step()
|
||||
@@ -1654,7 +1654,7 @@ METHOD Inspect( uValue, cValueName ) CLASS HBDebugger
|
||||
|
||||
|
||||
METHOD IsValidStopLine( cName, nLine ) CLASS HBDebugger
|
||||
RETURN hb_DBG_IsValidStopLine( ::pInfo, cName, nLine )
|
||||
RETURN __dbgIsValidStopLine( ::pInfo, cName, nLine )
|
||||
|
||||
|
||||
METHOD LineNumbers( lLineNumbers ) CLASS HBDebugger
|
||||
@@ -1716,7 +1716,7 @@ METHOD LoadCallStack() CLASS HBDebugger
|
||||
|
||||
::aProcStack := Array( ::nProcLevel )
|
||||
|
||||
nCurrLevel := hb_dbg_ProcLevel() - 1
|
||||
nCurrLevel := __dbgProcLevel() - 1
|
||||
nDebugLevel := nCurrLevel - ::nProcLevel + 1
|
||||
|
||||
FOR i := nDebugLevel TO nCurrLevel
|
||||
@@ -1908,7 +1908,7 @@ METHOD MonoDisplay() CLASS HBDebugger
|
||||
METHOD NextRoutine() CLASS HBDebugger
|
||||
::RestoreAppScreen()
|
||||
::RestoreAppState()
|
||||
hb_DBG_SetNextRoutine( ::pInfo )
|
||||
__dbgSetNextRoutine( ::pInfo )
|
||||
::Exit()
|
||||
RETURN Self
|
||||
|
||||
@@ -2070,7 +2070,7 @@ METHOD Quit() CLASS HBDebugger
|
||||
|
||||
::Exit()
|
||||
::Hide()
|
||||
hb_DBG_SetQuit( ::pInfo )
|
||||
__dbgSetQuit( ::pInfo )
|
||||
s_oDebugger := NIL
|
||||
|
||||
__QUIT()
|
||||
@@ -2793,7 +2793,7 @@ METHOD Step() CLASS HBDebugger
|
||||
METHOD ToCursor() CLASS HBDebugger
|
||||
|
||||
IF ::IsValidStopLine( strip_path( ::cPrgName ), ::oBrwText:RowPos() )
|
||||
hb_DBG_SetToCursor( ::pInfo, strip_path( ::cPrgName ), ::oBrwText:RowPos() )
|
||||
__dbgSetToCursor( ::pInfo, strip_path( ::cPrgName ), ::oBrwText:RowPos() )
|
||||
::RestoreAppScreen()
|
||||
::RestoreAppState()
|
||||
::Exit()
|
||||
@@ -2828,14 +2828,14 @@ METHOD ToggleBreakPoint( nLine, cFileName ) CLASS HBDebugger
|
||||
|
||||
IF nAt == 0
|
||||
AAdd( ::aBreakPoints, { nLine, cFileName } ) // it was nLine
|
||||
hb_DBG_AddBreak( ::pInfo, cFileName, nLine )
|
||||
__dbgAddBreak( ::pInfo, cFileName, nLine )
|
||||
IF hb_FileMatch( cFileName, strip_path( ::cPrgName ) )
|
||||
::oBrwText:ToggleBreakPoint( nLine, .T. )
|
||||
ENDIF
|
||||
ELSE
|
||||
ADel( ::aBreakPoints, nAt )
|
||||
ASize( ::aBreakPoints, Len( ::aBreakPoints ) - 1 )
|
||||
hb_DBG_DelBreak( ::pInfo, nAt - 1 )
|
||||
__dbgDelBreak( ::pInfo, nAt - 1 )
|
||||
IF hb_FileMatch( cFileName, strip_path( ::cPrgName ) )
|
||||
::oBrwText:ToggleBreakPoint( nLine, .F. )
|
||||
ENDIF
|
||||
@@ -2848,7 +2848,7 @@ METHOD ToggleBreakPoint( nLine, cFileName ) CLASS HBDebugger
|
||||
|
||||
METHOD Trace() CLASS HBDebugger
|
||||
|
||||
hb_DBG_SetTrace( ::pInfo )
|
||||
__dbgSetTrace( ::pInfo )
|
||||
::Step() //forces a Step()
|
||||
|
||||
RETURN Self
|
||||
@@ -2871,7 +2871,7 @@ METHOD TracepointAdd( cExpr ) CLASS HBDebugger
|
||||
ENDIF
|
||||
aWatch := { "tp", cExpr, NIL }
|
||||
::RestoreAppState()
|
||||
hb_DBG_AddWatch( ::pInfo, cExpr, .T. )
|
||||
__dbgAddWatch( ::pInfo, cExpr, .T. )
|
||||
::SaveAppState()
|
||||
AAdd( ::aWatch, aWatch )
|
||||
::WatchpointsShow()
|
||||
@@ -2901,9 +2901,9 @@ METHOD VarGetValue( aVar ) CLASS HBDebugger
|
||||
LOCAL cType := Left( aVar[ VAR_TYPE ], 1 )
|
||||
|
||||
DO CASE
|
||||
CASE cType == "G" ; RETURN hb_dbg_vmVarGGet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
CASE cType == "L" ; RETURN hb_dbg_vmVarLGet( hb_dbg_procLevel() - aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
CASE cType == "S" ; RETURN hb_dbg_vmVarSGet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
CASE cType == "G" ; RETURN __dbgvmVarGGet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
CASE cType == "L" ; RETURN __dbgvmVarLGet( __dbgprocLevel() - aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
CASE cType == "S" ; RETURN __dbgvmVarSGet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ] )
|
||||
OTHERWISE ; RETURN aVar[ VAR_POS ] // Public or Private
|
||||
ENDCASE
|
||||
|
||||
@@ -2918,14 +2918,14 @@ METHOD VarSetValue( aVar, uValue ) CLASS HBDebugger
|
||||
LOCAL cType := Left( aVar[ VAR_TYPE ], 1 )
|
||||
|
||||
IF cType == "G"
|
||||
hb_dbg_vmVarGSet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ], uValue )
|
||||
__dbgvmVarGSet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ], uValue )
|
||||
|
||||
ELSEIF cType == "L"
|
||||
nProcLevel := hb_dbg_procLevel() - aVar[ VAR_LEVEL ] //skip debugger stack
|
||||
hb_dbg_vmVarLSet( nProcLevel, aVar[ VAR_POS ], uValue )
|
||||
nProcLevel := __dbgprocLevel() - aVar[ VAR_LEVEL ] //skip debugger stack
|
||||
__dbgvmVarLSet( nProcLevel, aVar[ VAR_POS ], uValue )
|
||||
|
||||
ELSEIF cType == "S"
|
||||
hb_dbg_vmVarSSet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ], uValue )
|
||||
__dbgvmVarSSet( aVar[ VAR_LEVEL ], aVar[ VAR_POS ], uValue )
|
||||
|
||||
ELSE
|
||||
// Public or Private
|
||||
@@ -3025,7 +3025,7 @@ METHOD WatchpointAdd( cExpr ) CLASS HBDebugger
|
||||
ENDIF
|
||||
|
||||
aWatch := { "wp", cExpr }
|
||||
hb_DBG_AddWatch( ::pInfo, cExpr, .F. )
|
||||
__dbgAddWatch( ::pInfo, cExpr, .F. )
|
||||
AAdd( ::aWatch, aWatch )
|
||||
::WatchpointsShow()
|
||||
|
||||
@@ -3044,7 +3044,7 @@ METHOD WatchpointDel( nPos ) CLASS HBDebugger
|
||||
IF LastKey() != K_ESC
|
||||
IF nPos >=0 .AND. nPos < Len( ::aWatch )
|
||||
::oBrwPnt:gotop()
|
||||
hb_DBG_DelWatch( ::pInfo, nPos )
|
||||
__dbgDelWatch( ::pInfo, nPos )
|
||||
ADel( ::aWatch, nPos + 1 )
|
||||
ASize( ::aWatch, Len( ::aWatch ) - 1 )
|
||||
IF Len( ::aWatch ) == 0
|
||||
@@ -3079,7 +3079,7 @@ METHOD WatchpointEdit( nPos ) CLASS HBDebugger
|
||||
|
||||
aWatch := { "wp", cExpr }
|
||||
|
||||
hb_DBG_SetWatch( ::pInfo, nPos - 1, cExpr, .F. )
|
||||
__dbgSetWatch( ::pInfo, nPos - 1, cExpr, .F. )
|
||||
::aWatch[ nPos ] := aWatch
|
||||
::WatchpointsShow()
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ PROCEDURE AltD( nAction )
|
||||
where ALTD() was called can have no debugger info - stop
|
||||
on first LINE with debugged info
|
||||
*/
|
||||
HB_DBG_INVOKEDEBUG( SET( _SET_DEBUG ) )
|
||||
__dbgINVOKEDEBUG( SET( _SET_DEBUG ) )
|
||||
|
||||
ELSEIF HB_ISNUMERIC( nAction )
|
||||
|
||||
|
||||
@@ -83,19 +83,19 @@ static void AddToArray( PHB_ITEM pItem, PHB_ITEM pReturn, ULONG ulPos )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <nVars> hb_dbg_vmStkGCount()
|
||||
* $FuncName$ <nVars> __dbgvmStkGCount()
|
||||
* $Description$ Returns the length of the global stack
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMSTKGCOUNT )
|
||||
HB_FUNC( __DBGVMSTKGCOUNT )
|
||||
{
|
||||
hb_retnl( hb_stackTopOffset() );
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <aStack> hb_dbg_vmStkGList()
|
||||
* $FuncName$ <aStack> __dbgvmStkGList()
|
||||
* $Description$ Returns the global stack
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMSTKGLIST )
|
||||
HB_FUNC( __DBGVMSTKGLIST )
|
||||
{
|
||||
PHB_ITEM pReturn;
|
||||
ULONG ulLen = hb_stackTopOffset();
|
||||
@@ -111,7 +111,7 @@ HB_FUNC( HB_DBG_VMSTKGLIST )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <nVars> __vmStkLCount( <nProcLevel> )
|
||||
* $FuncName$ <nVars> hb_stackLen( <nProcLevel> )
|
||||
* $Description$ Returns params plus locals amount of the nProcLevel function
|
||||
* $End$ */
|
||||
static LONG hb_stackLen( int iLevel )
|
||||
@@ -136,16 +136,16 @@ static LONG hb_stackLen( int iLevel )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <nVars> hb_dbg_vmStkLCount( <nProcLevel> )
|
||||
* $FuncName$ <nVars> __dbgvmStkLCount( <nProcLevel> )
|
||||
* $Description$ Returns params plus locals amount of the nProcLevel function
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMSTKLCOUNT )
|
||||
HB_FUNC( __DBGVMSTKLCOUNT )
|
||||
{
|
||||
hb_retnl( hb_stackLen( hb_parni( 1 ) + 1 ) );
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <aStack> hb_dbg_vmStkLList()
|
||||
* $FuncName$ <aStack> __dbgvmStkLList()
|
||||
* $Description$ Returns the stack of the calling function
|
||||
* "[<symbol>]" Means symbol.
|
||||
*
|
||||
@@ -155,7 +155,7 @@ HB_FUNC( HB_DBG_VMSTKLCOUNT )
|
||||
* [x+1 .. y] Locals
|
||||
* [y+1 ..] Pushed data
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMSTKLLIST )
|
||||
HB_FUNC( __DBGVMSTKLLIST )
|
||||
{
|
||||
PHB_ITEM pReturn;
|
||||
ULONG ulLen, ul;
|
||||
@@ -173,13 +173,13 @@ HB_FUNC( HB_DBG_VMSTKLLIST )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <aParam> hb_dbg_vmParLGet()
|
||||
* $FuncName$ <aParam> __dbgvmParLGet()
|
||||
* $Description$ Returns the passed parameters of the calling function
|
||||
* $End$ */
|
||||
/* TODO : put bLocals / bParams */
|
||||
/* somewhere for declared parameters */
|
||||
/* and locals */
|
||||
HB_FUNC( HB_DBG_VMPARLLIST )
|
||||
HB_FUNC( __DBGVMPARLLIST )
|
||||
{
|
||||
hb_itemReturnRelease( hb_arrayFromParams( hb_parni( 1 ) + 1 ) );
|
||||
}
|
||||
@@ -221,7 +221,7 @@ HB_EXPORT PHB_ITEM hb_dbg_vmVarLGet( int iLevel, int iLocal )
|
||||
return pLocal;
|
||||
}
|
||||
|
||||
HB_FUNC( HB_DBG_VMVARLGET )
|
||||
HB_FUNC( __DBGVMVARLGET )
|
||||
{
|
||||
int iLevel = hb_parni( 1 ) + 1;
|
||||
int iLocal = hb_parni( 2 );
|
||||
@@ -233,7 +233,7 @@ HB_FUNC( HB_DBG_VMVARLGET )
|
||||
hb_errRT_BASE( EG_ARG, 6005, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS );
|
||||
}
|
||||
|
||||
HB_FUNC( HB_DBG_VMVARLSET )
|
||||
HB_FUNC( __DBGVMVARLSET )
|
||||
{
|
||||
int iLevel = hb_parni( 1 ) + 1;
|
||||
int iLocal = hb_parni( 2 );
|
||||
@@ -269,37 +269,41 @@ HB_FUNC( HB_DBG_VMVARLSET )
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
HB_FUNC( __VMSTKLCOUNT )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMSTKLCOUNT );
|
||||
HB_FUNC_EXEC( __DBGVMSTKLCOUNT );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMPARLLIST )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMPARLLIST );
|
||||
HB_FUNC_EXEC( __DBGVMPARLLIST );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMSTKLLIST )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMSTKLLIST );
|
||||
HB_FUNC_EXEC( __DBGVMSTKLLIST );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARLGET )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARLGET );
|
||||
HB_FUNC_EXEC( __DBGVMVARLGET );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARLSET )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARLSET );
|
||||
HB_FUNC_EXEC( __DBGVMVARLSET );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMSTKGLIST )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMSTKGLIST );
|
||||
HB_FUNC_EXEC( __DBGVMSTKGLIST );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMSTKGCOUNT )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMSTKGCOUNT );
|
||||
HB_FUNC_EXEC( __DBGVMSTKGCOUNT );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -59,8 +59,8 @@
|
||||
* hb_vmPushDoubleConst()
|
||||
*
|
||||
* Copyright 1999 Eddie Runia <eddie@runia.com>
|
||||
* __VMVARSGET()
|
||||
* __VMVARSLIST()
|
||||
* __DBGVMVARSGET()
|
||||
* __DBGVMVARSLIST()
|
||||
*
|
||||
* See doc/license.txt for licensing terms.
|
||||
*
|
||||
@@ -9542,7 +9542,7 @@ HB_EXPORT ULONG hb_dbg_ProcLevel( void )
|
||||
* check if the debugger activation was requested or request the debugger
|
||||
* activation if .T. is passed
|
||||
*/
|
||||
HB_FUNC( HB_DBG_INVOKEDEBUG )
|
||||
HB_FUNC( __DBGINVOKEDEBUG )
|
||||
{
|
||||
BOOL bRequest = s_bDebugRequest;
|
||||
if( hb_pcount() > 0 )
|
||||
@@ -9553,10 +9553,10 @@ HB_FUNC( HB_DBG_INVOKEDEBUG )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <aStat> __vmVarSList()
|
||||
* $FuncName$ <aStat> __dbgvmVarSList()
|
||||
* $Description$ Return the statics array. Please aClone before assignments
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMVARSLIST )
|
||||
HB_FUNC( __DBGVMVARSLIST )
|
||||
{
|
||||
PHB_ITEM pStatics = hb_itemClone( &s_aStatics );
|
||||
|
||||
@@ -9564,35 +9564,35 @@ HB_FUNC( HB_DBG_VMVARSLIST )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <nStatics> __vmVarSLen()
|
||||
* $FuncName$ <nStatics> __dbgvmVarSLen()
|
||||
* $Description$ Return the statics array length.
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMVARSLEN )
|
||||
HB_FUNC( __DBGVMVARSLEN )
|
||||
{
|
||||
hb_retnl( hb_arrayLen( &s_aStatics ) );
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <xStat> __vmVarSGet(<nStatic>)
|
||||
* $FuncName$ <xStat> __dbgvmVarSGet(<nStatic>)
|
||||
* $Description$ Return a specified statics
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMVARSGET )
|
||||
HB_FUNC( __DBGVMVARSGET )
|
||||
{
|
||||
hb_itemReturn( hb_dbg_vmVarSGet( hb_parni( 1 ), hb_parni( 2 ) ) );
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ __vmVarSSet(<nStatic>,<uValue>)
|
||||
* $FuncName$ __dbgvmVarSSet(<nStatic>,<uValue>)
|
||||
* $Description$ Sets the value of a specified statics
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMVARSSET )
|
||||
HB_FUNC( __DBGVMVARSSET )
|
||||
{
|
||||
PHB_ITEM pItem = hb_param( 3, HB_IT_ANY );
|
||||
if( pItem )
|
||||
hb_arraySet( &s_aStatics, hb_parni( 1 ) + hb_parni( 2 ), pItem );
|
||||
}
|
||||
|
||||
HB_FUNC( HB_DBG_PROCLEVEL )
|
||||
HB_FUNC( __DBGPROCLEVEL )
|
||||
{
|
||||
hb_retnl( hb_dbg_ProcLevel() - 1 ); /* Don't count self */
|
||||
}
|
||||
@@ -9623,10 +9623,10 @@ HB_EXPORT PHB_ITEM hb_dbg_vmVarGGet( int nGlobal, int nOffset )
|
||||
}
|
||||
|
||||
/* $Doc$
|
||||
* $FuncName$ <aStat> __vmVarGList()
|
||||
* $FuncName$ <aStat> __dbgvmVarGList()
|
||||
* $Description$ Return a clone of the globals array.
|
||||
* $End$ */
|
||||
HB_FUNC( HB_DBG_VMVARGLIST )
|
||||
HB_FUNC( __DBGVMVARGLIST )
|
||||
{
|
||||
#if 0
|
||||
PHB_ITEM pGlobals = hb_itemClone( &s_aGlobals );
|
||||
@@ -9637,12 +9637,12 @@ HB_FUNC( HB_DBG_VMVARGLIST )
|
||||
hb_itemReturnRelease( pGlobals );
|
||||
}
|
||||
|
||||
HB_FUNC( HB_DBG_VMVARGGET )
|
||||
HB_FUNC( __DBGVMVARGGET )
|
||||
{
|
||||
hb_itemReturn( hb_dbg_vmVarGGet( hb_parni( 1 ), hb_parni( 2 ) ) );
|
||||
}
|
||||
|
||||
HB_FUNC( HB_DBG_VMVARGSET )
|
||||
HB_FUNC( __DBGVMVARGSET )
|
||||
{
|
||||
#if 0
|
||||
PHB_ITEM pItem = hb_param( 3, HB_IT_ANY );
|
||||
@@ -9725,32 +9725,34 @@ HB_FUNC( __OPGETPRF ) /* profiler: It returns an array with an opcode called and
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
HB_FUNC( __VMVARGLIST )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARGLIST );
|
||||
HB_FUNC_EXEC( __DBGVMVARGLIST );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARSLIST )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARSLIST );
|
||||
HB_FUNC_EXEC( __DBGVMVARSLIST );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARSLEN )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARSLEN );
|
||||
HB_FUNC_EXEC( __DBGVMVARSLEN );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARSGET )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARSGET );
|
||||
HB_FUNC_EXEC( __DBGVMVARSGET );
|
||||
}
|
||||
|
||||
HB_FUNC( __VMVARSSET )
|
||||
{
|
||||
HB_FUNC_EXEC( HB_DBG_VMVARSSET );
|
||||
HB_FUNC_EXEC( __DBGVMVARSSET );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
HB_FUNC( ERRORLEVEL )
|
||||
{
|
||||
|
||||
@@ -50,16 +50,16 @@ function Main()
|
||||
|
||||
QOut( "-DEBUG Functions-")
|
||||
QOut( "-Statics-" )
|
||||
Debug( hb_dbg_vmVarSList() )
|
||||
Debug( __dbgvmVarSList() )
|
||||
|
||||
QOut( "-Global Stack-" )
|
||||
Debug ( hb_dbg_vmStkGList() )
|
||||
Debug ( __dbgvmStkGList() )
|
||||
|
||||
QOut( "-Local Stack-" )
|
||||
Debug ( hb_dbg_vmStkLList() )
|
||||
Debug ( __dbgvmStkLList() )
|
||||
|
||||
QOut( "-Parameters-" )
|
||||
Debug ( hb_dbg_vmParLList() )
|
||||
Debug ( __dbgvmParLList() )
|
||||
|
||||
Pause()
|
||||
|
||||
@@ -84,19 +84,19 @@ function FuncSecond( nParam, cParam, uParam )
|
||||
QOut()
|
||||
|
||||
QOut( "-Statics-" )
|
||||
Debug ( hb_dbg_vmVarSList() )
|
||||
Debug ( __dbgvmVarSList() )
|
||||
QOut()
|
||||
|
||||
QOut( "-Global Stack- Len=", hb_dbg_vmStkGCount() )
|
||||
Debug ( hb_dbg_vmStkGList() )
|
||||
QOut( "-Global Stack- Len=", __dbgvmStkGCount() )
|
||||
Debug ( __dbgvmStkGList() )
|
||||
QOut()
|
||||
|
||||
QOut( "-Local Stack- Len=", hb_dbg_vmStkLCount() )
|
||||
xStack := Debug ( hb_dbg_vmStkLList() )
|
||||
QOut( "-Local Stack- Len=", __dbgvmStkLCount() )
|
||||
xStack := Debug ( __dbgvmStkLList() )
|
||||
QOut()
|
||||
|
||||
QOut( "-Parameters-" )
|
||||
xParam := Debug( hb_dbg_vmParLList() )
|
||||
xParam := Debug( __dbgvmParLList() )
|
||||
if xParam[ xStack[ 7 ] ] == "Hello"
|
||||
QOut( ":-)" )
|
||||
endif
|
||||
@@ -226,7 +226,7 @@ return nil
|
||||
static function Transfer( x1,x2,x3,x4,x5,x6,x7,x8,x9,x10 /* etc */ )
|
||||
|
||||
local self := QSelf()
|
||||
local aParam := hb_dbg_vmParLList()
|
||||
local aParam := __dbgvmParLList()
|
||||
local nLen := PCount()
|
||||
local xRet
|
||||
local xData
|
||||
|
||||
@@ -50,9 +50,9 @@ Function Main
|
||||
QOut( "To the power 3 : ", aFunc()[1] )
|
||||
|
||||
QOut( "Global stack" )
|
||||
Debug( hb_dbg_vmStkGList() ) // Please note a is a reference to aArray !
|
||||
Debug( __dbgvmStkGList() ) // Please note a is a reference to aArray !
|
||||
QOut( "Statics")
|
||||
Debug( hb_dbg_vmVarSList() )
|
||||
Debug( __dbgvmVarSList() )
|
||||
return NIL
|
||||
|
||||
Function aFunc()
|
||||
|
||||
@@ -56,7 +56,7 @@ function Main()
|
||||
oFrom:Dispose()
|
||||
oTo:Dispose()
|
||||
|
||||
// Debug( hb_dbg_vmStkGList() ) // Stack is OK!
|
||||
// Debug( __dbgvmStkGList() ) // Stack is OK!
|
||||
|
||||
return nil
|
||||
|
||||
|
||||
@@ -55,9 +55,9 @@ Function Main
|
||||
QOut( "To the power 3 : ", ToChar( o:x ) )
|
||||
|
||||
QOut( "Global stack" )
|
||||
Debug( hb_dbg_vmStkGList() )
|
||||
Debug( __dbgvmStkGList() )
|
||||
QOut( "Statics")
|
||||
Debug( hb_dbg_vmVarSList() )
|
||||
Debug( __dbgvmVarSList() )
|
||||
return NIL
|
||||
|
||||
Function TNumber() // Very simple class
|
||||
|
||||
@@ -47,9 +47,9 @@ Function Main
|
||||
QOut( "To the power 3 : ", o:x )
|
||||
|
||||
QOut( "Global stack" )
|
||||
Debug( hb_dbg_vmStkGList() )
|
||||
Debug( __dbgvmStkGList() )
|
||||
QOut( "Statics")
|
||||
Debug( hb_dbg_vmVarSList() )
|
||||
Debug( __dbgvmVarSList() )
|
||||
return NIL
|
||||
|
||||
Function TNumber() // Very simple class
|
||||
|
||||
Reference in New Issue
Block a user