COBOL2002 ユーザーズガイド

[目次][用語][索引][前へ][次へ]

35.5.11 規格の設定

規格との仕様チェックを設定するコンパイラオプションについて,説明します。

<この項の構成>
(1) -StdMIAオプション
(2) -Std85オプション
(3) -Std2002オプション
(4) -StdVersionオプション

(1) -StdMIAオプション

(a) 形式
 
-StdMIA{,13|,14}+
-noStdMIA
(b) 機能

仕様チェック機能として,MIA仕様範囲外チェックします。

仕様範囲外の記述があると,警告レベルのエラーメッセージが出力されます。

注※
MULTIVENDOR INTEGRATION ARCHITECTURE VERSION 1.3および1.4(日本電信電話株式会社)の仕様(JIS X 3002-1988 電子計算機プログラムCOBOLの仕様が前提)

-StdMIA,13
MIAバージョン1.3仕様を範囲外チェックします。

-StdMIA,14
MIAバージョン1.4仕様を範囲外チェックします。
なお,このオプションを指定すると,-StdMIA,13サブオプションを仮定します。

-noStdMIA
-StdMIAオプションの指定を打ち消します。
(c) 注意事項

(2) -Std85オプション

(a) 形式
 
-Std85{,{High|Middle|Low }|,Obso|,Report}+
-noStd85
(b) 機能

仕様チェック機能として,JIS仕様範囲外チェック廃要素をチェックします。

仕様範囲外の記述や廃要素があると,警告レベルのエラーメッセージが出力されます。

注※
JIS X 3002-1992 電子計算機プログラムCOBOLの仕様

-Std85,High
JIS仕様の範囲外チェックをします。

-Std85,Middle
JIS仕様の中位集合範囲外(上位集合,JIS仕様の範囲外)チェックをします。

-Std85,Low
JIS仕様の下位集合範囲外(中位集合,上位集合,JIS仕様の範囲外)チェックをします。

-Std85,Obso
JIS仕様の廃要素をチェックします。

-Std85,Report
JIS仕様の報告書作成機能をチェックします。

-noStd85
-Std85オプションの指定を打ち消します。
(c) 注意事項

(3) -Std2002オプション

(a) 形式
 
-Std2002{,OutRange|,Obso|,Archaic}+
-noStd2002
(b) 機能

仕様チェック機能として,COBOL2002仕様範囲外チェック廃要素をチェックします。

仕様範囲外の記述や廃要素があると,警告レベルのエラーメッセージが出力されます。

-Std2002,OutRange
COBOL2002仕様の範囲外チェックをします。

-Std2002,Obso
COBOL2002仕様の廃要素をチェックします。

-Std2002,Archaic
COBOL2002仕様の古典的要素をチェックします。

-noStd2002
-Std2002オプションの指定を打ち消します。
(c) 注意事項

(4) -StdVersionオプション

(a) 形式
 
-StdVersion,{1|2}
-noStdVersion
(b) 機能

第1次または第2次規格の言語仕様の解釈でコンパイルするためのオプションです。このオプションを指定しないときは,第3次規格以降の解釈でコンパイルされます。

-StdVersion,1
第1次規格(JIS72,ISO72,ANSI68)の解釈でコンパイルします。

-StdVersion,2
第2次規格(JIS80,ISO78,ANSI74)の解釈でコンパイルします。

-noStdVersion
-StdVersionオプションの指定を打ち消します。
このオプションを指定した場合,第3次規格以降の解釈でコンパイルします。
注※
第3次規格以降の解釈とは,次の二つの規格の解釈を指します。

-StdVersionオプション指定時,および未指定時の言語仕様の相違を,次に示します。

差異の生じる言語仕様 第1次規格 第2次規格 第3次規格以降
比較条件の略記法のNOT 略記法の条件の中のNOTが比較演算子の一部とも取れるときには論理演算子とみなす。 NOTの直後にGREATER,>,LESS,<,EQUAL,=,>=,<=のどれかが続くとき,NOTは比較条件の一部となる。これ以外のNOTは論理演算子とみなす。
MOVE文の位取り 送り出し側作用対象が位取りした整数項目(PICTURE句の右端文字がP)で,受け取り側作用対象が英数字編集項目の場合,あとに続くゼロを切り捨てて空白とする。 左記の場合,あとに続くゼロを切り捨てない。
UNSTRING文のDELIMITED BY ALL指定 複数の連続する区切り文字が現れた場合,区切り文字の受け取り領域に入るだけ区切り文字を移す。 左記の場合,区切り文字の受け取り領域には1個(1組)の区切り文字しか移さない。
COPY文の展開 第1次規格の仕様に従った書き方は旧仕様として展開する。 第2次規格以降の仕様に従ってCOPY文を展開する。
JUST句の処理 JUST句の指定がある英数字,英字,英数字編集にVALUE句で初期値を与える場合,JUST句の機能を働かせる。 左記の場合,JUST句の機能を働かせない。
WRITE文のADVANCINGの仮定 1ファイルに対する複数個のWRITE文でADVANCING指定があるものとないものを混用した場合,ADVANCING指定のないものに対してはBEFORE ADVANCING 1かAFTER ADVANCING 1のどちらかを仮定する。どちらを仮定するかはWRITE文の指定の内容による。 左記の場合,常にAFTER ADVANCING 1を仮定する。
PERFORM文のVARYING
AFTER指定がある場合の反復制御変数を初期化する位置

  • TEST AFTER指定時
    外側のループの反復制御変数をBY指定の値で増加させてから,内側のループの反復制御変数をFROM指定の変数で再び初期化する。
  • TEST BEFORE指定時
    内側のループの反復制御変数FROM指定の変数で初期化してから,外側のループの反復制御変数をBY指定の値で増加させる。
TEST AFTER指定時もTEST BEFORE指定時も,外側のループの反復制御変数をBY指定の値で増加させてから,内側の反復制御変数をFROM指定で再び初期化する。
SELECT OPTIONAL句 覚え書きとする。 覚え書きとしない。
CURRENCY SIGN句に指定できる定数 "=","/"が指定できる。 "=","/"は指定できない。
(c) 注意事項