Space announcement This documentation space provides the same content as before, but the organization of the content has changed. The content is now organized based on logical branches instead of legacy book titles. We hope that the new structure will help you quickly find the content that you need.

Source Listing (2.L)


The Source Listing screen allows online viewing of the compiled program listing. This screen allows you to:

  • View any program source listing processed with the BMC Language Processor.
  • Find or locate any character string or statement number.
  • Use line commands to view, set, change, and delete program breakpoints, skips, and counts.
  • Use line commands to view, set, change, and delete selections for data name keeps.
  • Identify a resume statement by line command, if at a break/abend.
  • Exclude and redisplay lines within the listing.

Access this screen by typing the letter L on the Debugging Facilities Menu, or as described in Transferring Between Screens.

Source Listing Screen (2.L)

 ------------------------------ SOURCE LISTING (2.L) ----------------------C024
 COMMAND ===>                                                   SCROLL ===> CSR
 MODULE: CWDEMCB2 CSECT: CWDEMCB2          COMPILED: 09 JUN 2005 - 11.23.01
   LV ----- COBOL DATANAME KEEPS ---- -- ATTRIBUTES -- ----+---10----+---20--->
   77 CURR-PAY                        9(5)V99 NUM-DIS  0000000
   02 WA-HOURS                        999 NUM-DIS      $$$
   02 WA-RATE                         9(3)V99 NUM-DIS  00950
   **END**

 ------   ----------------------------- ASRA (DATA EXCEPTION) at CWDEMCB2.359 ->
 000356
 000357    300-EMPLOYEE-PAY-RTN.
 000358        IF WA-TYPE EQUAL 'N' OR 'I' OR 'S'
 =====>             COMPUTE CURR-PAY   EQUAL WA-HOURS * WA-RATE
 000360             COMPUTE CURR-TAXES EQUAL CURR-PAY * WA-TAX-RAT
 000361             ADD CURR-PAY   TO WA-YTD-GRS
 000362             ADD CURR-TAXES TO WA-YTD-TAX.
 000363
 000364        IF PAYEMP1 EQUAL '00001'
 000365             MOVE WORK-AREA TO PAYROLL-DATA-EMP001.
 000366
 000367        IF PAYEMP1 EQUAL '00999'
 000368             MOVE WORK-AREA TO PAYROLL-DATA-EMP999.


Line Commands

The following line commands may be entered on this screen:

A (After)

Sets a breakpoint to be taken after the execution of a statement.

AC (After Conditional)

Sets a conditional breakpoint to be taken after the execution of a statement.

B (Before)

Sets a breakpoint to be taken before the execution of a statement.

BC (Before Conditional)

Sets a conditional breakpoint to be taken before the execution of a statement.

C (Count)

Sets counter and monitors the frequency of execution for a statement.

CC (Count Block)

Specifies a block of statements to set counters.

D (Delete)

Deletes from a statement any previously set after breakpoint, before breakpoint, count, keeps, skip, and/or verify.

DA (Delete After)

Deletes a previously set after breakpoint.

DB (Delete Before)

Deletes a previously set before breakpoint.

DC (Delete Count)

Deletes a previously set count.

DD (Delete Block)

Deletes all breakpoints, counts, keeps, skips, and verifies in the lines delimited by two DD commands.

DK (Delete Keep)

Deletes a previously set keep.

DS (Delete Skip)

Deletes a previously set skip.

DV (Delete Verify)

Deletes a previously set verify. Note that a delete verify will reset the source display, but will not delete any changes made in memory.

DZ (Delete Runto)

Deletes a previously set runto breakpoint.

DDA (Delete Block After)

Deletes previously set after breakpoints in the lines delimited by two DDA commands.

DDB (Delete Block Before)

Deletes previously set before breakpoints in the lines delimited by two DDB commands.

DDC (Delete Block Count)

Deletes previously set counters in the lines delimited by two DDC commands.

DDK (Delete Block Keep)

Deletes previously set keeps in the lines delimited by two DDK commands.

DDS (Delete Block Skip)

Deletes previously set skips in the lines delimited by two DDS commands.

DDV (Delete Block Verify)

Deletes previously set verifies in the lines delimited by two DDV commands. Note that a delete verify will reset the source display, but will not delete any changes made in memory.

DH (Delete Hex)

Turns off the Hex mode display in the KEEP window portion. This command is only valid if the H line command was previously used on the data field.

DK (Delete Keep)

Deletes the Keep in the KEEP window portion. This command is only valid if a KEEP was previously used on the data field.

F (First)

Displays the first line or, if entered as Fn, the first n lines in an excluded block.

GT (Go To)

Changes the resume point for a program when at a break/abend.

H (Hex)

Displays the KEEP window portion in Hex mode. This command is only valid while in SHOW ALL display mode.

K (Keep)

Sets a keep for a variable in the program.

  • K sets a keep for the first variable on a line.
  • Kn sets a keep for the nth variable on a line in a C, COBOL or PL/I program. For example, K3 sets a keep for the third variable on the line.
  • K* sets a keep for every variable on the line in a C, COBOL or PL/I program.

KK (Keep Block)

Sets a keep for all variables in the lines delimited by two KK commands.

L (Last)

Displays the last line or, if entered as Ln, the last n lines in an excluded block.

P (Peek)

Transfers to the applicable Program Storage screen (2.3) and positions to the first variable or, if entered as Pn, the nth variable selected when at a break/abend.

S (Unconditional Skip)

Temporarily skips execution of the statement.

Important

If an attempt is made to use the S line command to skip the last executable statement of a program, a COBOL EXIT statement, a C return, or a PL/I END statement, Code Debug CICS will prevent the skip from being set and alert the user by highlighting the skip and issuing an illegal skip message.

SC (Conditional Skip)

Temporarily skips execution of the statement if a user-specified condition is met.

Important

If an attempt is made to use the SC line command to skip the last executable statement of a program, a COBOL EXIT statement, or a PL/I END statement, Code Debug CICS will prevent the skip from being set and alert the user by highlighting the skip and issuing an illegal skip message.

SS (Skip Block)

Sets unconditional skips for all the lines delimited by two SS commands.

Important

If an attempt is made to use the SS line command to skip the last executable statement of a program, a COBOL EXIT statement, or a PL/I END statement, Code Debug CICS will prevent the skip from being set and alert the user by highlighting the skip and issuing an illegal skip message.

V (Verify)

Displays and allows modification of Assembler object code for the selected line of an Assembler program.

Important

Assembler object code cannot be modified using the V line command for a program residing in a protected (E)RDSA.

VV (Verify Block)

Displays and allows modification of Assembler object code for the lines delimited by two VV commands in an Assembler program.

Important

Assembler object code cannot be modified using the VV line command for a program residing in a protected (E)RDSA.

X (Exclude)

Excludes a line or, if entered as Xnn lines from the display.

XX (Exclude Block)

Excludes the lines delimited by two XX commands from the display.

For more information, see Line-Commands-for-Code-Debug-CICS.

You can also use the FIND or LOCATE primary command to advance to a character string. For more information, see Finding-and-Locating-Data. For information on setting and removing breakpoints and keeps, see Setting-and-Removing-Breakpoints and Setting-and-Deleting-Keeps.

Z (Runto)

Sets a runto breakpoint to be taken one time, before the execution of a statement, then deleted. If you have currently trapped a break or abend, the GO command will be issued after the runto is set.

Data Area

The data area of the Source Listing screen (2.L) consists of three areas: the keep window, the source window, and the footing area.

Open the keep window to display and modify kept data items during program execution. The keep window is opened only in a break/abend state for the program in which a breakpoint has been set or an abend has occurred. For methods of modifying data in the keep window, see Program-Storage-2-3.

Important

(PL/I only) The keep window does not support PL/I automatic variables with adjustable extents.

The source area of the screen allows you to see the output from the compiled/assembled program that was processed by the BMC Language Processor.

The source data shows the source code for the program. The exact statement where the break/abend occurred is marked with an arrow (=====>) in the statement number column. If at a before breakpoint, the statement at which the user is stopped is marked with a =====> in the statement number column. If the breakpoint is an after breakpoint or the breakpoint is taken as a result of a GO UNTIL or when-condition being met, a double arrow (====>>) instead of a single arrowhead is displayed.

The footing area displays additional lines of code as well as status information via the SET FOOT command. To display additional lines of source code in the data area, use the SET FOOT OFF primary command to remove the footings from the bottom of the screen. You can also use the SET KEEPS OFF command to close the keep window.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*