Understanding what debug tables do and where to save them
The debug tables contain descriptions of variables, their attributes, and their location in storage. z/OS® Debugger uses these descriptions when it references variables and the statement table used to set breakpoints or identify the current statement. The debug tables can be stored in the program object of the program or in a separate debug file. You can save debug tables in a separate debug file if you compile or assemble your programs with one of the supported compilers or assemble as listed in Choosing compiler options for debugging.
- Saving symbol tables in a separate debug file can reduce the size of the program object for your program.
- Including debug tables in your program object eliminates the need for having a separate file for debugging.
For C and C++ programs, debug tables can be saved in a separate debug file (.dbg file) by specifying the
FORMAT(DWARF)
suboption of the DEBUG
compiler option. z/OS Debugger supports the DEBUG
compiler
option shipped with z/OS C/C++ Version 1.6 or later.
Programs compiled with the Enterprise COBOL for z/OS
Version 5 compiler, Version 6 Release 1 compiler or Version 6 Release 2 and
above compiler with the TEST(NOSEPARATE)
compiler option have all of their
debug information (including the symbol table) stored in a NOLOAD
segment of the
program object. This segment is only loaded into memory when you are debugging the program
object.