コンパイルに対する指示および制御の方法には、コンパイラー・オプションを使用する方法と、コンパイラー指示ステートメント (コンパイラー指示) を使用する方法とがあります。
コンパイラー・オプションは、次の表にリストされているプログラムの局面に影響を与えます。 各オプションに結び付けられている情報は、そのオプションを指定するための構文を与えるもので、オプション、そのパラメーター、および他のパラメーターとの相互作用を説明しています。
| プログラムの局面 | コンパイラー・オプション | デフォルト | オプションの省略形 |
|---|---|---|---|
| ソース言語 | ARITH | ARITH(COMPAT) | AR(C|E) |
| CICS | NOCICS | なし | |
| CODEPAGE | CODEPAGE(01140) | CP(ccsid) | |
| CURRENCY | NOCURRENCY | CURR|NOCURR | |
| DBCS | DBCS | なし | |
| LIB | LIB | なし | |
| NSYMBOL | NSYMBOL(NATIONAL) | NS(DBCS|NAT) | |
| NUMBER | NONUMBER | NUM|NONUM | |
| QUOTE/APOST | QUOTE | Q|APOST | |
| SEQUENCE | SEQUENCE | SEQ|NOSEQ | |
| SQL | NOSQL | なし | |
| SQLCCSID | SQLCCSID | SQLC|NOSQLC | |
| WORD | NOWORD | WD|NOWD | |
| XMLPARSE | XMLPARSE(XMLSS) | XP(X)|XP(C) | |
| 日付処理 | DATEPROC | NODATEPROC、または DATEPROC(FLAG,NOTRIG) (DATEPROC だけが指定された場合) | DP|NODP |
| INTDATE | INTDATE(ANSI) | なし | |
| YEARWINDOW | YEARWINDOW(1900) | YW | |
| マップおよびリスト | LANGUAGE | LANGUAGE(ENGLISH) | LANG(EN|UE|JA|JP) |
| LINECOUNT | LINECOUNT(60) | LC | |
| LIST | NOLIST | なし | |
| MAP | NOMAP | なし | |
| OFFSET | NOOFFSET | OFF|NOOFF | |
| SOURCE | SOURCE | S|NOS | |
| SPACE | SPACE(1) | なし | |
| TERMINAL | NOTERMINAL | TERM|NOTERM | |
| VBREF | NOVBREF | なし | |
| XREF | XREF(FULL) | X|NOX | |
| オブジェクト・デックの生成 | COMPILE | NOCOMPILE(S) | C|NOC |
| DECK | NODECK | D|NOD | |
| NAME | NONAME、または NAME(NOALIAS) (NAME だけが指定された場合) | なし | |
| OBJECT | OBJECT | OBJ|NOOBJ | |
| PGMNAME | PGMNAME(COMPAT) | PGMN(CO|LU|LM) | |
| オブジェクト・コード制御 | ADV | ADV | なし |
| AWO | NOAWO | なし | |
| DLL | NODLL | なし | |
| EXPORTALL | NOEXPORTALL | EXP|NOEXP | |
| FASTSRT | NOFASTSRT | FSRT|NOFSRT | |
| NUMPROC | NUMPROC(NOPFD) | なし | |
| OPTIMIZE | NOOPTIMIZE | OPT|NOOPT | |
| OUTDD | OUTDD(SYSOUT) | OUT | |
| TRUNC | TRUNC(STD) | なし | |
| ZWB | ZWB | なし | |
| 仮想記憶域の使用量 | BUFSIZE | 4096 | BUF |
| DATA | DATA(31) | なし | |
| DYNAM | NODYNAM | DYN|NODYN | |
| RENT | RENT | なし | |
| RMODE | AUTO | なし | |
| SIZE | SIZE(MAX) | SZ | |
| デバッグと診断 | DIAGTRUNC | NODIAGTRUNC | DTR|NODTR |
| DUMP | NODUMP | DU|NODU | |
| FLAG | FLAG(I,I) | F|NOF | |
| FLAGSTD | NOFLAGSTD | なし | |
| SSRANGE | NOSSRANGE | SSR|NOSSR | |
| TEST | NOTEST | なし | |
| その他 | ADATA | NOADATA | なし |
| EXIT | NOEXIT | EX(INX,LIBX,PRTX,ADX) | |
| MDECK | NOMDECK | NOMD|MD|MD(C)|MD(NOC) | |
| OPTFILE | なし | なし | |
| THREAD | NOTHREAD | なし |
インストール先デフォルト: コンパイラーがインストールされたときにセットアップされたデフォルト・オプションは、他のオプションでオーバーライドしない限り、プログラムでは有効になります。(インストール先によっては、特定のコンパイラー・オプションは、オーバーライドできないように固定としてセットアップされます。問題がある場合は、システム管理担当者に連絡してください。) 有効なデフォルトのコンパイラー・オプションを見つけるためには、オプションを指定しないで、テスト・コンパイルを実行してください。出力リストには、インストール先によって指定されたデフォルト・オプションがリストされます。
オーバーライド不可能なオプション: インストール先によっては、特定のコンパイラー・オプションは、オーバーライドできないようにセットアップされます。問題がある場合は、システム管理担当者に連絡してください。
パフォーマンスに関する考慮事項: ARITH、AWO、 DYNAM、FASTSRT、NUMPROC、OPTIMIZE、RENT、SQLCCSID、SSRANGE、TEST、THREAD、および TRUNC コンパイラー・オプションは、実行時のパフォーマンスに影響を及ぼすことがあります。