自由形式の制御ステートメント
自由形式の制御ステートメントは、CTL-OPT で始まり、ゼロ個またはそれ以上のキーワード が続き、セミコロンで終わります。
制御ステートメントの規則
ソース・ファイル内にゼロ個またはそれ以上の制御ステートメントを指定できます。
繰り返すことができない制御仕様キーワードを制御ステートメント内に複数回指定することはできません。
自由形式の制御ステートメントと固定形式の制御ステートメントを混用することができます。連続する固定形式仕様からなる各グループが、1 つの制御ステートメントを形成します。
プログラムのコンパイルに自由形式制御ステートメントが 含まれている場合、ACTGRP、BNDDIR、または STGMDL キーワード があると DFTACTGRP キーワードはデフォルトで *NO になります。
自由形式の制御ステートメントの内部で使用を許可されている指示は、
/IF、/ELSEIF、/ELSE、および /ENDIF のみです。
CTL-OPT
/IF DEFINED(*CRTBNDRPG)
ACTGRP(*CALLER)
/ENDIF
OPTION(*SRCSTMT);
制御ステートメントの例
- 自由形式の 2 つの制御ステートメントがあり、各ステートメントにいくつかのキーワードが指定されています。
ctl-opt datfmt(*iso) timfmt(*iso) alwnull(*usrctl); ctl-opt option(*srcstmt)ccsid(*char:*jobrun); - キーワードがない制御ステートメントが 1 つあります。このステートメントの唯一の効果は、
RPG コンパイラーが制御仕様書データ域を検索するのを防止することです。
ctl-opt; - 自由形式の制御ステートメントと固定形式の制御ステートメントが混用されています。
- 3 つの仕様が 1 つの固定形式ステートメントを形成しています。
- 1 つの自由形式ステートメントが CTL-OPT で始まり、セミコロンで終わっています。
- 1 つの仕様が 1 つの固定形式ステートメントを形成しています。
H OPTION(*SRCSTMT : 1 H *NODEBUGIO) 1 H ACTGRP(*NEW) 1 CTL-OPT ALWNULL(*USRCTL) 2 CCSID(*UCS2 2 :1200) 2 CCSID(*CHAR:*JOBRUN); 2 H DATFMT(*YMD) TIMFMT(*USA) 3
