[Info-vax] fortran version && Compile the main file in debug mode only

HCorte hmmbcorte at gmail.com
Wed Aug 26 11:58:41 EDT 2020


Thanks xyzz,

A quarta-feira, 26 de agosto de 2020 à(s) 16:07:00 UTC+1, Stephen Hoffman escreveu:
> On 2020-08-26 11:44:41 +0000, HCorte said: 
> 
> > have readed that section of B-1 where to use SS$_DEBUG to make/tell a 
> > program to start the debugger. 
> > 
> > So searched and include the follow: CALL LIB$SIGNAL (%VAL(SS$_DEBUG))
> The include file $SSDEF as has been mentioned, and you'll probably want 
> to specify the ASCIC-format counted-ASCII-string-by-reference 
> semi-colon separated list of debugger commands to invoke, if you're 
> self-debugging. That's where you set the output path to write the 
> debugger output, etc., if you're writing a replacement for the default 
> spew-to-the-user stackdump handler. (There are also TBK$ calls around 
> for invoking traceback, if you're interested in that topic.) 
> 
> -- 
> Pure Personal Opinion | HoffmanLabs LLC

in the example providade
        LIB$SIGNAL(SS$_DEBUG, 1, UPLIT BYTE(%ASCIC ’SHOW CALLS’)); 
       
So to run a list of debugger commands tried the follow for FORTRAN where yes it enters debug mode but doesn't seem to run SET BREAK and SHOW CALL
        CALL LIB$SIGNAL (%VAL(SS$_DEBUG))
        CALL LIB$SIGNAL (%VAL('SET BREAK %LINE 5'))
        CALL LIB$SIGNAL (%VAL('SHOW CALL'))

         OpenVMS I64 Debug64 Version V8.4-000


DBG> step
stepped to SWAPNUMBS\SWAPNUMBS\%LINE 2099
  2099:         CALL LIB$SIGNAL (%VAL(SS$_DEBUG))
DBG> step
stepped to SWAPNUMBS\SWAPNUMBS\%LINE 2100
  2100:         CALL LIB$SIGNAL (%VAL('SET BREAK %LINE 5'))
DBG> step
%NONAME-S-NOTSHRTBL, selected logical name table is not shared
stepped to SWAPNUMBS\SWAPNUMBS\%LINE 2101
  2101:         CALL LIB$SIGNAL (%VAL('SHOW CALL'))

ASCIC-format counted-ASCII-string-by-reference semi-colon separated list of debugger commands to invoke 
should be in one-line something like this? but ASCIC is not recognized
       CALL LIB$SIGNAL (%VAL(SS$_DEBUG),%ASCIC('SET BREAK %LINE 5; SHOW CALL'))

> That's where you set the output path to write the  debugger output, etc
as a parameter of LIB$SIGNAL?






More information about the Info-vax mailing list