32.5.4 コンパイラオプションの一覧
コンパイラオプションの一覧を次に示します。
(1) 最終生成物の種類
最終生成物※の種類を設定するコンパイラオプションを,次に示します。
- 注※
-
最終生成物とは,コンパイラが最終的に生成する実行可能ファイルのことを示します。
表中のコンパイラオプションの詳細については,「32.5.5 最終生成物の種類の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-Main,{System|V3} ファイル名 |
先頭の最外側プログラムを主プログラムとして作成する。 |
○ |
○ |
-PIC,{Std|Expand} -noPIC |
共用ライブラリに使う位置独立コードの作成 |
○ |
○ |
- (凡例)
-
○:サポートしている
(2) 製品連携
他製品との連携を設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.6 他製品との連携の設定」を参照してください。
オプション |
機能 |
OS |
||
---|---|---|---|---|
AIX(32) |
AIX(64) |
Linux |
||
-SQL,{XDM|ODBC〔,NoCont〕}※ -noSQL |
埋め込みSQL文をXDM/RDまたはODBCインタフェース機能で使用できるようにする。 |
○ |
○ |
○ |
-SQLDisp -noSQLDisp |
埋め込みSQL文に用途(USAGE句)が表示用(DISPLAY)のデータ項目を指定できるようにする。 |
× |
× |
○ |
-RDBTran -noRDBTran |
HiRDBによる索引ファイル入出力機能を使用する。 |
○ |
○ |
× |
-XMAP,LinePrint -noXMAP |
書式印刷機能を使用して,順編成ファイルをプリンタに出力する。 |
○ |
× |
× |
- (凡例)
-
○:サポートしている
×:サポートしていない
- 注※
-
ODBCサブオプションは,Linuxで有効です。
(3) 実行
実行時の動作を設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.7 実行の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-NumAccept -noNumAccept |
ACCEPT文に数字項目を指定できるようにする。 |
○ |
○ |
-NumCsv -noNumCsv |
CSV編成ファイルで,セルデータを数値として入出力できるようにする。 |
○ |
○ |
-MultiThread -noMultiThread |
マルチスレッド対応COBOLプログラムを作成する。 |
○ |
○ |
-MainNotCBL -noMainNotCBL |
すべて副プログラムとして作成する。 |
○ |
○ |
- (凡例)
-
○:サポートしている
(4) 最適化
プログラムの最適化を設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.8 プログラムの最適化の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-Optimize,{0|1|2|3} |
コンパイル時の最適化のレベルを指定する。 |
○ |
○ |
- (凡例)
-
○:サポートしている
(5) デバッグ
デバッグを設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.9 デバッグの設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-DebugLine -noDebugLine |
デバッグ行を有効にする。 |
○ |
○ |
-DebugInf〔,Trace〕 -noDebugInf |
異常終了時,エラー要約情報を出力する。 |
○ |
○ |
-DebugCompati -noDebugCompati |
実行時に次のチェックをする。
|
○ |
○ |
-DebugData〔,ValueHex〕 -noDebugData |
データ例外を検出する。 |
○ |
○ |
-TDInf -noTDInf |
テストデバッグ情報を出力する。 |
○ |
○ |
-CVInf -noCVInf |
カバレージ情報を出力する。 |
○ |
○ |
-DebugRange -noDebugRange |
添字,指標名の繰り返し回数について,次元ごとの範囲外チェックをする。 |
○ |
○ |
-TestCmd{,Full|,Break|,Sim}+ -noTestCmd |
TDコマンド格納ファイルに出力する情報の種類を指定する。 |
○ |
○ |
-SimMain プログラム名 -noSimMain |
主プログラムをシミュレーションする。 |
○ |
○ |
-SimSub プログラム名 -noSimSub |
副プログラムをシミュレーションする。 |
○ |
○ |
-SimIdent -noSimIdent |
副プログラム(一意名CALL文)をシミュレーションする。 |
○ |
○ |
- (凡例)
-
○:サポートしている
(6) リンク
リンクを設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.10 リンクの設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-Compile,{CheckOnly|NoLink} -noCompile |
コンパイルの処理範囲を指定する。 |
○ |
○ |
-OutputFile ファイル名 -noOutputFile |
生成する実行可能ファイル名を指定する。 |
○ |
○ |
-Link オプションの並び -noLink |
リンカに渡すオプションを指定する。 |
○ |
○ |
-DynamicLink,{Call|IdentCall} -noDynamicLink |
ダイナミックリンクを使用する。 |
○ |
○ |
-OldLinkOpt,GCBypass -noOldLinkOpt |
ccbl2002コマンドで内部的に-bgcbypassリンカオプションを仮定する。 |
○ |
× |
- (凡例)
-
○:サポートしている
×:サポートしていない
(7) 規格
規格仕様のチェックを設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.11 規格の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-StdMIA{,13|,14}+ -noStdMIA※ |
MIA仕様の範囲外チェックをする。 |
○ |
○ |
-Std85{,{High|Middle|Low}|,Obso|,Report}+ -noStd85※ |
JIS仕様をチェックする。 |
○ |
○ |
-Std2002{,OutRange|,Obso|,Archaic}+ -noStd2002 |
COBOL2002規格仕様をチェックする。 |
○ |
○ |
-StdVersion,{1|2} -noStdVersion※ |
第1次規格/第2次規格の解釈でコンパイルする。 |
○ |
○ |
- (凡例)
-
○:サポートしている
- 注※
-
これらのオプションは,自由形式正書法で書かれたCOBOL原始プログラムとしてコンパイルするプログラムには指定できません。指定してコンパイルすると,エラーとなってコンパイルが中止されます。
(8) 移行
他システムとの移行を設定するコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.12 他システムとの移行の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-CompatiV3※1※2 -noCompatiV3 |
VOS3 COBOL85との互換機能を有効にする。 |
○ |
○ |
-Compati85{,IoStatus|,Linage|,Call|,Power|,Syntax|,IDParag|,RsvWord|,NoPropagate|,All}+ -noCompati85 |
COBOL85互換機能を有効にする。 |
○ |
○ |
-H8Switch -noH8Switch |
HITAC8000シリーズの仕様でコンパイルする。 |
○ |
○ |
-Cblctr -noCblctr |
CBL-CTR特殊レジスタを使用できるようにする。 |
○ |
○ |
-DigitsTrunc -noDigitsTrunc |
転記文で上位けたを切り捨てる。 |
○ |
○ |
-IgnoreLCC -noIgnoreLCC |
行送り制御文字を無視する。 |
○ |
○ |
-CmAster -noCmAster |
1カラム目が'*'の行を注記行とする。 |
○ |
○ |
-CmDol -noCmDol |
7カラム目が'$'の行を注記行とする。 |
○ |
○ |
-Comp5 -noComp5 |
COMP-5を指定できるようにする。 |
○ |
○ |
-V3Spec〔,CopyEased〕 -noV3Spec |
VOS3 COBOL85に対するUNIX COBOL2002固有の構文をチェックする。 |
○ |
○ |
-V3ConvtName -noV3ConvtName |
VOS3 COBOL85からのソースファイル互換のため,COPY文の原文名定数中の'¥'と'@'を変換する。 |
○ |
○ |
-Switch,{EBCDIC|EBCDIK}〔,Unprintable〕〔,noApplyJpnItem〕 -noSwitch |
字類条件を指定する。 |
○ |
× |
-V3Rec,{Fixed|Variable}※1※2 -noV3Rec |
メインフレーム(VOS3)の固定長または可変長レコード形式のプログラムを,VOS3の日本語文字の扱いに合わせてコンパイルする。 |
○ |
○ |
-V3RecFCSpace※1 -noV3RecFCSpace |
空白に関する機能キャラクタの扱いをメインフレーム(VOS3)と同等にする。 |
○ |
○ |
-V3RecEased{,QuoteCheck|,WordCheck}+ -noV3RecEased |
-V3Recオプション指定時の仕様チェックを緩和する。 |
○ |
○ |
-DoubleQuote -noDoubleQuote |
引用符( " )を分離符とみなしてコンパイルする。 |
○ |
○ |
-BigEndian{,Bin|,Float}+ -noBigEndian |
2進データ項目または浮動小数点データ項目をビッグエンディアン形式で処理する。 |
× |
○ |
-International -noInternational |
インタナショナリゼーション機能を使用する。 |
○ |
○ |
-EucPosition※1 -noEucPosition |
EUCコード使用時,見かけ上の文字位置でコンパイルする。 |
○ |
× |
-VOSCBL{,OccursKey|,ReportControl|,DataComm|,RedefinesData}+ -noVOSCBL |
メインフレーム互換機能を有効にする。 |
○ |
○ |
-PortabilityCheck{,Literal|,Numeric}+ -noPortabilityCheck |
移行向けチェック機能を有効にする。 |
○ |
○ |
-IgnoreAPPLY,FILESHARE -noIgnoreAPPLY |
APPLY FILE-SHARE句を覚え書きとみなす。 |
○ |
○ |
- (凡例)
-
○:サポートしている
×:サポートしていない
- 注※1
-
これらのオプションは,自由形式正書法で書かれたCOBOL原始プログラムとしてコンパイルするプログラムには指定できません。指定してコンパイルすると,エラーとなってコンパイルが中止されます。
- 注※2
-
Linuxの場合,コンパイラ環境変数CBLV3UNICODEにYESを指定したときだけ有効です。
(9) リスト出力
リスト出力の設定をするコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.13 リスト出力の設定」を参照してください。
オプション |
機能 |
OS |
|
---|---|---|---|
AIX |
Linux |
||
-SrcList,{OutputAll|CopyAll|CopySup|NoCopy}〔,NoFalsePath〕〔,DataLoc〕 -noSrcList |
コンパイルリストを出力する。 |
○ |
○ |
-ErrSup{,I|,W}+ -noErrSup |
IレベルまたはWレベルエラーの出力を抑止する。 |
○ |
○ |
- (凡例)
-
○:サポートしている
(10) その他
その他の設定をするコンパイラオプションを,次に示します。
表中のコンパイラオプションの詳細については,「32.5.14 その他の設定」を参照してください。
オプション |
機能 |
OS |
|||
---|---|---|---|---|---|
AIX(32) |
AIX(64) |
Linux(x86) |
Linux(x64) |
||
-Bin1Byte -noBin1Byte |
1バイトの2進項目を有効にする(PICTURE句の指定で2けたまでは1バイトとして扱う)。 |
○ |
○ |
○ |
○ |
-JPN,{Alnum|V3JPN|V3JPNSpace}※1 -noJPN |
日本語項目の扱いを指定する。 |
○※1 |
○※1 |
× |
× |
-EquivRule,{NotExtend|NotAny|StdCode} -noEquivRule |
文字の等価規則をどう変更するか指定する。 |
○ |
○ |
○ |
○ |
-UscoreStart -noUscoreStart |
先頭が下線のCALL定数を指定できるようにする。 |
○ |
○ |
○ |
○ |
-BinExtend -noBinExtend |
2進データ項目に指定できる初期値を拡張する。 |
○ |
○ |
○ |
○ |
-MinusZero -noMinusZero |
10進項目で負の符号を持つゼロを正の符号を持つゼロに変換する。 |
○ |
○ |
○ |
○ |
-TruncCheck〔,Binary〕 -noTruncCheck |
転記でのデータ切り捨てをチェックする。 送り出し側作用対象が2進項目で,受け取り側作用対象が外部10進項目/内部10進項目のとき,2進項目は格納できる最大けた数で転記のけた数をチェックする。 |
○ |
○ |
○ |
○ |
-LowerAsUpper -noLowerAsUpper |
定数指定のCALLに指定された英小文字を英大文字に変換してプログラムを呼び出す。 |
○ |
○ |
○ |
○ |
-CBLVALUE -noCBLVALUE |
環境変数CBLVALUEを有効にする。 |
○ |
○ |
○ |
○ |
-Repository,{Gen|Sup} -noRepository |
リポジトリファイルの生成時,強制的に出力するか,更新しないかを指定する。 |
○ |
○ |
○ |
○ |
-RepositoryCheck -noRepositoryCheck |
同じソースファイル中の翻訳単位の定義と外部リポジトリ中の情報に相違があるかどうかをチェックする。 |
○ |
○ |
○ |
○ |
-Define 翻訳変数名〔=値〕〔,翻訳変数名〔=値〕〕… -noDefine |
コンパイル時に有効となる,翻訳変数名とその値を定義する。 |
○ |
○ |
○ |
○ |
-Details -noDetails |
コンパイラオプションの詳細情報を出力する。 |
○ |
○ |
○ |
○ |
-OldForm '旧オプションの並び' |
UNIX COBOL85のオプションを指定する。 |
○ |
○ |
○ |
○ |
-Help |
ccbl2002コマンドのヘルプを出力する。 |
○ |
○ |
○ |
○ |
-Profile,{Prof|Gprof}※2 -noProfile |
profまたはgprofでのプロファイル用オブジェクトファイルを作成する。 |
○ |
○ |
○※2 |
○※2 |
-UniObjGen -noUniObjGen |
シフトJISのCOBOLソースからUnicodeのオブジェクトを生成する。 |
○ |
○ |
○ |
○ |
-UniEndian,{Little|Big} -noUniEndian |
シフトJISで記述された日本語文字定数をUTF-16LE,またはUTF-16BEに変換する。 |
○ |
○ |
○ |
○ |
-Lx64ConventionCheck -noLx64ConventionCheck |
Linux(x64)でC言語との連携を行うときに問題となる可能性のあるコードがある場合,チェックする。 |
× |
× |
× |
○ |
-MaxDigits38 |
数字項目および数字定数に指定できる最大けた数を18けたから38けたに拡張する。 |
× |
○ |
× |
○ |
-IntResult,DecFloat40 |
算術演算の中間結果の表現形式を40けたの10進浮動小数点形式にする。 |
× |
○ |
× |
○ |
-LiteralExtend,Alnum -noLiteralExtend |
英数字定数と定数指定のプログラム名の長さを拡張する。 |
○ |
○ |
○ |
○ |
-SpaceAsZero -noSpaceAsZero |
外部10進項目中の空白に対して特殊処理を行う。 |
○ |
○ |
○ |
○ |
-CheckUninitData -noCheckUninitData |
データ項目の初期化漏れをチェックする。 |
○ |
○ |
○ |
○ |
- (凡例)
-
○:サポートしている
×:サポートしていない
- 注※1
-
次のオプションは,AIXで使用できます。
-JPN,V3JPNSpace
- 注※2
-
次のオプションは,Linuxでは使用できません。
-Profile,Prof