*CONTROL (または *CBL) ステートメントを使用することによって、ソース・コードおよびソース・テキストの全体にわたるストレージ・マップのリストを選択して表示したり、表示を抑止したりすることができます。
| フォーマット |
|---|
|
これらのオプションによって得られる出力の詳細については、「COBOL for Windows プログラミング・ガイド」を参照してください。
リストのエンコードを UTF-8 またはコンパイル時のロケールで示されるコード・ページのいずれで行うかを指定する方法については、「COBOL for Windows プログラミング・ガイド」の LSTFILE コンパイラー・オプションの記述を参照してください。
*CONTROL ステートメントと *CBL ステートメントは同じ意味です。 *CONTROL が受け入れられるところはどこでも、*CBL は受け入れられます。
*CONTROL または *CBL という文字は、7 桁目以降の任意の桁から始めることができ、その後に少なくとも 1 つのスペースまたはコンマを挟んで、1 つ以上のオプションのキーワードを続けます。オプションのキーワードは、 1 つまたは複数のスペースまたはコンマで区切らなければなりません。このステートメントは、 その行にある唯一のステートメントである必要があり、 継続させることはできません。 このステートメントはピリオドで終わらせることができます。
*CONTROL ステートメントと *CBL ステートメントは、 プログラムのソース・コードの中に組み込まなければなりません。 例えば、バッチ・アプリケーションの場合は、 *CONTROL ステートメントおよび *CBL ステートメントは PROCESS (CBL) ステートメントとプログラムの終わりの間 (END PROGRAM マーカーが指定されていればその前) に置かれなければなりません。
*CONTROL (*CBL) ステートメントを含むソース・コード行は、 ソース・プログラムのリストには現れません。
固定オプションとしてインストール時に定義されているオプションがあると、固定オプションは次に挙げるすべてのものを優先します。
要求されたオプションは、次のように取り扱われます。
入力ソース・テキスト行のリストは、次のどちらかのステートメントによって制御されます。
*CONTROL SOURCE [*CBL SOURCE] *CONTROL NOSOURCE [*CBL NOSOURCE]
*CONTROL NOSOURCE ステートメントで、 かつ SOURCE がコンパイル・オプションとして要求されていた場合、これ以降はソース・リストの印刷は抑止されます。「ソースの印刷は抑止されました」という通知 (I-レベル) メッセージが表示されます。
コンパイラーは常にオブジェクト・コードのリストを作成します。 *CONTROL (または *CBL) ステートメントの LIST オプションと NOLIST オプションは構文チェックされますが、オブジェクト・コードには何も影響しません。
ストレージ・マップの項目のリストは、データ部の中にある次のどちらかのステートメントによって制御されています。
*CONTROL MAP [*CBL MAP] *CONTROL NOMAP [*CBL NOMAP]
*CONTROL NOMAP ステートメントで、 かつ MAP がコンパイル・オプションとして要求されていた場合、ここ以降はストレージ・マップの項目のリストは抑止されます。
例えば、次のどちらかの組のステートメントを使用すると、A および B が現れないストレージ・マップのリストを作成します。
*CONTROL NOMAP *CBL NOMAP
01 A 01 A
02 B 02 B
*CONTROL MAP *CBL MAP