COBOL2002 使用の手引 手引編


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