Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Conditions for symbolic debugging

For debugging at a symbolic level, AID permits data items, sections, and paragraphs to be addressed using the names defined in the compilation unit. It also permits statement lines and individual COBOL verbs in the Procedure Division to be referenced. Consequently, AID must be provided with the appropriate information on these symbolic names. This information can be subdivided into two parts:

  • the List for Symbolic Debugging (LSD), in which the symbolic names and statements defined in the module are cataloged, and

  • the External Symbol Dictionary (ESD), which records a module’s external references.

Generation or transfer of this information is initiated or suppressed by means of appropriate operands in the call command or control statement at each of the following stages:

  • compilation with COBOL2000

  • linking and loading with the dynamic binder loader (DBL) or

  • linking with the static linkage editor (TSOSLNK) and

  • loading with the static loader (ELDE)

The ESD information is generated and transferred as standard, whereas the LSD information can be made accessible to AID in two ways. After it has been generated at compile time, this information can be:

  • loaded together with the entire program, or

  • dynamically loaded for each compilation unit as necessary, provided the associated object modules are available in a PLAM library.

For each of these cases, the following table provides an overview of the operands that need to be specified in order to generate and transfer the LSD information.

Stages in the
development of the
program

Operands to be specified

if the LSD information is to be loaded jointly with the entire program

if the LSD information is to be dynamically loaded by AID at a later stage 1)

Compile with COBOL20002)

TEST-SUPPORT=AID()
or
COMOPT SYMTEST=ALL

TEST-SUPPORT=AID()
or
COMOPT SYMTEST=ALL

Link and load with the dynamic binder loader

LOAD-PROGRAM ...,
TEST-OPTIONS=AID
or
START-PROGRAM ...,
TEST-OPTIONS=AID

LOAD-PROGRAM ...,
[TEST-OPTIONS=NONE]
or
START-PROGRAM ...,
[TEST-OPTIONS=NONE]

Link with TSOSLNK

PROGRAM...,SYMTEST=ALL

PROGRAM...[,SYMTEST=MAP]

Load or load and start with the static loader

LOAD-PROGRAM ...,
TEST-OPTIONS=AID
or
START-PROGRAM ...,
TEST-OPTIONS=AID

LOAD-PROGRAM ...,
[TEST-OPTIONS=NONE]
or
START-PROGRAM ...,
[TEST-OPTIONS=NONE]

Table 11: Operands for generating LSD information

1)

This is possible only if the associated modules reside in a PLAM library.

2)

If the COMOPT GEN-SHARE=YES or the SDF option SHARE-CODE=YES is specified, only statements from the code or data module are listed for the trace when debugging.