Library /sys$common/syshlp/SDA.HLB  —  Extension Routines, Description  Debugging an Extension
    In addition to the "after-the-fact" information provided by
    the condition handler, you can debug SDA extensions using the
    OpenVMS Debugger. A second copy of the SDA image, SDA_DEBUG.EXE,
    is provided in SYS$SYSTEM. By defining the logical name SDA to
    reference this image, you can debug SDA extensions as follows:

    o  Compile your extension /DEBUG/NOOPT and link it /DEBUG or
       /DSF.

    o  Define logical names for SDA and the extension, and invoke
       SDA.

    o  Type SET BREAK START_EXTENSION at the initial DBG> prompt, and
       then type GO.

    o  Invoke the extension at the SDA> prompt.

    o  When Debug prompts again, use Debug commands to set
       breakpoints, and so on, in the extension and then type GO.

    o  Invoke the extension, providing the necessary arguments.

    An example of the preceding steps is as follows:

            $ cc /debug /noopt mbx$sda + sys$library:sys$lib_c /library
            $ link /debug /share -
                    mbx$sda.obj, -
                    sys$library:vms$volatile_private_interfaces /library, -
                    sys$input /option
            symbol_vector = (sda$extend=procedure)
            symbol_vector = (sda$extend_version=data)
            $ !
            $ define mbx$sda sys$disk:[]mbx$sda
            $ define sda sda_debug
            $ analyze /system
            ...
            DBG> set break start_extension
            DBG> go
            ...
            SDA> mbx
            break at routine START\START_EXTENSION
            ...
            DBG> set image mbx$sda
            DBG> set language c
            DBG> set break /exception
            DBG> go
            MBX commands: 'MBX SUMMARY' and 'MBX <address>'
            SDA> mbx summary
            ...
            SDA> mbx <address>
            ...
            %DEBUG-I-DYNMODSET, setting module MBX$SDA
            %SYSTEM-E-INVARG, invalid argument
            ...
            DBG>
Close Help