ContentsIndexPreviousNext

2.1.2 Listing Options

By default, ACUCOBOL-GT does not create a listing. The following options cause a listing to be made and control what will appear in the listing.

-Lc Creates a cross-reference at the end of the listing. The cross-reference first lists all Working-Storage data items in alphabetical order, then all section names and paragraph names. Included for each item are: the line on which the item is declared; the name of the item; and the lines on which it is referenced. A small example is shown below.

CROSS-REFERENCE

Line   Name                    Referenced on line(s)

32     ACOMMA
30     DISPLAY-FILE-STATUS     54*    62
36     ERROR-WINDOW            59*    65*
26     FILE-STATUS             44     83
35     FLD1                    44*
34     FLD1-LITERAL            43
27     FULL-FILE-STATUS        53     54*
42     MAIN-SCREEN             Unreferenced
31     PRIMARY-FILE-STATUS     Owning group referenced
28     PRIMARY-FILE-STATUS     Owning group referenced
23     RST-REC                 Owning group referenced
33     SECONDARY-FILE-STATUS   Owning group referenced
29     SECONDARY-FILE-STATUS   Owning group referenced
21     TEST-RECORD75           77     79
37     WHITE-ON-BLUE           57

testit.cbl  Thu Sep 04 10:05:42 1998 ACUCOBOL-GT v4.0 Page:0002

CROSS-REFERENCE SECTIONS/PARAGRAPHS

Line   Name                    Referenced on line(s)

69     MAIN-LOGIC
51     TESTFIL-ERR-HANDLING
49     TESTFIL-ERROR-HANDLING  50

If an item is not referenced directly, the listing indicates if the item's "owning group" is referenced, or if a "subordinate item" is referenced, or both ("owning group & subordinate item").

If the compiler detects that a Working-Storage data item may be removed without affecting program functionality, it prints the word "Unreferenced" to the right of the name of the data item. This happens only if the data item is not a group item with subordinates that are referenced, and the data item is not subordinate to a group item that is referenced.

A line number followed by an asterisk indicates that the contents of the data item were modified at that line. Parameters passed in a CALL statement BY REFERENCE are always marked as modified in the listing, because it is possible that they were changed. An item that is not directly referenced but belongs to a referenced group, or is subordinate to an item that is referenced, is so indicated. When a full listing is requested with a cross-reference ("-Lfc"), line numbers are placed in columns 3 through 9 of the listing.

The first three columns of the listing indicate the copy files. Each line of a copy file is indicated, with the nest level number followed by a greater than symbol (>). The nest level number is "1" for a copy file included directly in the main source file, "2" for a copy file that is included in a level "1" copy file, "3" for a copy file included in a level "2" copy file, and so forth. An example of a copy file listing is shown under the "-Lw" option.

-Lf Creates a full listing of the source program including the text of the COPY libraries.

-Li Creates summary information about the program compiled. This is automatically set by any of the "-L" options.

-Ll Sets the page length of the listing. This option must be followed by the number of lines per page (as the next separate argument). Specifying a negative number or zero ("0") for the argument produces a continuous listing without page headers or form feeds (a blank line separates different sections of the listing).

-Lo This must be followed (as the next separate argument) by the name of the file to hold the listing. If this option is not specified, the listing is written to the standard output. This may be redirected to a file or a printer using the normal operating system commands.

-Ls Creates a symbol table at the end of the listing.

-Lw Specifies a wide listing format. This option implies a full listing (thus "-Lw" is equivalent to "-Lfw"). The listing uses 101 characters to display copy book indicators, line numbers, relative line numbers, program addresses, sequence numbers, and the rest of each source line.

For multiple-line sentences, the address of the first verb of each line is shown.

The first three columns indicate copy files. Each line of a copy file is indicated, with the nest level number followed by a greater than symbol (>). The nest level number is "1" for a copy file included directly in the main source file, "2" for a copy file that is included in a level "1" copy file, "3" for a copy file included in a level "2" copy file, and so forth. Following is a portion of a listing that shows a copy file:

   50                main-logic.
   51    000002         copy "copybook".
1> 52               *
1> 53                   display "Copy Book".
1> 54               *
   55    00000E         display window
   56                      size 40 lines 10
   57                      line 10 col 10 boxed
   58                      pop-up area is error-window.

-Lx Creates extended statistics at the end of the listing.