ソース・リスト
図 1 にソース・リストを示します。 ソース・プログラムのステートメントは、REPLACE ステートメントで識別されるプログラム・ソース・テキストを除き、 実行要求されたとおりに正確にリストされます。 置換テキストはソース・リストに表示されます。 PROGRAM-ID 段落のリストのページの後、 すべてのコンパイラー出力ページのシステム名の前のヘッディングのところには、 リスト出力されるプログラム ID 名が示されます。
図 1. ILE COBOL ソース・リストの例
5722WDS V5R4M0 060210 LN IBM ILE COBOL CBLGUIDE/SAMPLE ISERIES1 06/02/15 11:18:21 ページ 4
STMT PL SEQNBR -A 1 B..+....2....+....3....+....4....+....5....+....6....+....7..IDENTFCN S COPYNAME CHG DATE
A B C D E F
1 000300 IDENTIFICATION DIVISION.
2 000500 PROGRAM-ID. SAMPLE.
3 000600 AUTHOR. PROGRAMMER NAME.
4 000700 INSTALLATION. COBOL DEVELOPMENT CENTRE.
5 000800 DATE-WRITTEN. 02/24/94.
6 000900 DATE-COMPILED. 02/02/05 11:18:21
7 001100 ENVIRONMENT DIVISION.
8 001300 CONFIGURATION SECTION.
9 001400 SOURCE-COMPUTER. IBM-ISERIES
10 001500 OBJECT-COMPUTER. IBM-ISERIES
11 001700 INPUT-OUTPUT SECTION.
12 001800 FILE-CONTROL.
13 001900 SELECT FILE-1 ASSIGN TO DISK-SAMPLE.
15 002100 DATA DIVISION.
16 002300 FILE SECTION.
17 002400 FD FILE-1
002500 LABEL RECORDS ARE STANDARD
*==> a
*=a> LNC0848 0 The LABEL clause is syntax checked and ignored. G
002600 RECORD CONTAINS 20 CHARACTERS
002700 DATA RECORD IS RECORD-1.
*==> a
*=a> LNC0848 0 The DATA RECORDS clause is syntax checked and ignored.
18 002800 01 RECORD-1.
19 002900 02 FIELD-A PIC X(20).
20 003100 WORKING-STORAGE SECTION.
21 003200 01 SUBSCRIPT-TYPE TYPEDEF PIC S9(2) COMP-3.
22 003300 01 FILLER.
23 003400 05 KOUNT TYPE SUBSCRIPT-TYPE.
24 003500 05 LETTERS PIC X(26) VALUE "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
25 003600 05 ALPHA REDEFINES LETTERS
003700 PIC X(1) OCCURS 26 TIMES.
26 003800 05 NUMBR TYPE SUBSCRIPT-TYPE.
27 003900 05 DEPENDENTS PIC X(26) VALUE "01234012340123401234012340".
28 004000 05 DEPEND REDEFINES DEPENDENTS
004100 PIC X(1) OCCURS 26 TIMES.
004200 COPY WRKRCD.
29 +000100 01 WORK-RECORD. WRKRCD
30 +000200 05 NAME-FIELD PIC X(1). WRKRCD
31 +000300 05 FILLER PIC X(1) VALUE SPACE. WRKRCD
32 +000400 05 RECORD-NO PIC S9(3). WRKRCD
33 +000500 05 FILLER PIC X(1) VALUE SPACE. WRKRCD
34 +000600 05 LOCATION PIC A(3) VALUE "NYC". WRKRCD
35 +000700 05 FILLER PIC X(1) VALUE SPACE. WRKRCD
5722WDS V5R4M0 060210 LN IBM ILE COBOL CBLGUIDE/SAMPLE ISERIES1 06/02/15 11:18:21 ページ 5
STMT PL SEQNBR -A 1 B..+....2....+....3....+....4....+....5....+....6....+....7..IDENTFCN S COPYNAME CHG DATE
36 +000800 05 NO-OF-DEPENDENTS WRKRCD
+000900 PIC X(2). WRKRCD
37 +001000 05 FILLER PIC X(7) VALUE SPACES. WRKRCD
38 004300 77 WORKPTR USAGE POINTER.
004500*****************************************************
004600* THE FOLLOWING PARAGRAPH OPENS THE OUTPUT FILE TO *
004700* BE CREATED AND INITIALIZES COUNTERS *
004800*****************************************************
39 004900 PROCEDURE DIVISION.
005100 STEP-1.
40 005200 OPEN OUTPUT FILE-1.
41 005300 MOVE ZERO TO KOUNT, NUMBR.
005500*****************************************************
005600* THE FOLLOWING 3 PARAGRAPHS CREATE INTERNALLY THE *
005700* RECORDS TO BE CONTAINED IN THE FILE, WRITES THEM *
005800* ON THE DISK, AND DISPLAYS THEM *
005900*****************************************************
006000 STEP-2.
42 006100 ADD 1 TO KOUNT, NUMBR.
43 006200 MOVE ALPHA (KOUNT) TO NAME-FIELD.
44 006300 MOVE DEPEND (KOUNT) TO NO-OF-DEPENDENTS.
45 006400 MOVE NUMBR TO RECORD-NO.
006600 STEP-3.
46 006700 DISPLAY WORK-RECORD.
47 006800 WRITE RECORD-1 FROM WORK-RECORD.
007000 STEP-4.
48 007100 PERFORM STEP-2 THRU STEP-3 UNTIL KOUNT IS EQUAL TO 26.
007300*****************************************************
007400* THE FOLLOWING PARAGRAPH CLOSES FILE OPENED FOR *
007500* OUTPUT AND RE-OPENS IT FOR INPUT *
007600*****************************************************
007700 STEP-5.
49 007800 CLOSE FILE-1.
50 007900 OPEN INPUT FILE-1.
008100*****************************************************
008200* THE FOLLOWING PARAGRAPHS READ BACK THE FILE AND *
008300* SINGLE OUT EMPLOYEES WITH NO DEPENDENTS *
008400*****************************************************
008500 STEP-6.
51 008600 READ FILE-1 RECORD INTO WORK-RECORD
52 008700 AT END GO TO STEP-8.
008900 STEP-7.
53 009000 IF NO-OF-DEPENDENTS IS EQUAL TO "0"
54 009100 MOVE "Z" TO NO-OF-DEPENDENTS.
55 009200 GO TO STEP-6.
009400 STEP-8.
56 009500 CLOSE FILE-1.
57 009600 STOP RUN.
*==> a
*=a> LNC0650 0 Blocking/Deblocking for file 'FILE-1' will be performed by compiler-generated code.
* * * * * ソ ー ス 仕 様 の 終 わ り * * * * *
図 1 には、以下のフィールドが示されています。
- A
- コンパイラーが生成したステートメント番号: ソース・プログラム・リストの左に表示されます。 これらの番号は、FIPS リストを除くすべてのコンパイラー出力リストで参照されます。 1 つのステートメントが複数行にわたることもあり、1 行に複数のステートメントが含まれることもあります。 入力ソース・メンバーに一連の ILE COBOL ソース・プログラムが存在する場合、 ステートメント番号は新しいコンパイル単位ごとに 1 にリセットされます。 ステートメント番号は、1 つまたは複数のネストされた COBOL プログラムが含まれている単一のコンパイル単位ではリセットされません。
- B
- プログラム・ネスト・レベル: このフィールドに表示される数字は、プログラムのネストの程度を示します。
- C
- 参照番号: ソース・ステートメントの左に表示されます。
このフィールドと列見出しに表示される番号 (このリストでは SEQNBR として表示) は、CRTCBLMOD または CRTBNDCBL コマンド、
あるいは PROCESS ステートメントで指定されたオプションによって決定されます。
次の表のとおりです。
オプション 見出し 出所 NONUMBER
SEQNBR
ソース・ファイル・シーケンス番号
NUMBER NUMBER ユーザー提供のシーケンス番号 LINENUMBER LINNBR コンパイラー生成のシーケンス番号 - D
- シーケンス・エラー標識欄: この欄の S は、その行がシーケンスから外れていることを示します。 参照番号フィールドの順序検査は、SEQUENCE オプションが指定される場合に限り実行されます。
- E
- コピー名: コピー名が ILE COBOL COPY ステートメントで指定されている場合に、 その COPY ステートメントによってソース・プログラムに含められたすべてのレコードについて、 コピー名がここに示されます。 DDS-ALL-FORMATS 句が使用される場合、<--ALL-FMTS という名前が COPYNAME の下に表示されます。
- F
- 変更 / 日付フィールド: ここには、行が最後に修正された日付が示されます。
- G
- 組み込みエラー: 第 1 レベルのエラー・メッセージは、リスト中のエラーが発生した行の後に示されます。 エラーの原因となる文節、ステートメント、または句が示されます。