Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


矛盾するコンパイラー・オプション

COBOL for Windows コンパイラーは、次の 2 つのうちのいずれかのような矛盾するコンパイラー・オプションを検出することができます。1 つのオプションの肯定形式と否定形式の両方が、優先順位の階層の中で同じレベルで指定されている場合、または互いに排他的なオプションが 階層の同じレベルで指定されている場合です。

矛盾するオプションを階層の同じレベルで指定した場合は、最後に指定したオプションの方が有効になります。

互いに排他的なコンパイラー・オプションを同じレベルで指定すると、コンパイラーはエラー・メッセージを生成し、 オプションの一方を対立しない値に強制します。例えば、PROCESS ステートメントで OPTIMIZETEST の両方を指定すると、指定した順序に関係なく、 TEST が有効になり、OPTIMIZE は無視されます。

しかし、高レベルの優先順位で指定されたオプションは、低レベルの優先順位で指定されたオプションを オーバーライドします。 コンパイラーは、次の優先順位 (高位から下位の順) に従ってオプションを認識します。

  1. PROCESS (または CBL) ステートメントで指定されたオプション
  2. cob2 コマンド呼び出しで指定されたオプション
  3. COBOPT 環境変数のオプション・セット
  4. デフォルト・オプション

例えば、COBOPT 環境変数では TEST をコーディングし、 PROCESS ステートメントでは OPTIMIZE を コーディングすると、PROCESS ステートメントでコーディングされた オプションと、PROCESS ステートメントでコーディングされたオプションによって 強制的にオンにされたオプションの優先順位の方が高いため、 OPTIMIZE が有効になります。

表 32. 互いに排他的なコンパイラー・オプション
指定される 無視される 強制
CICS DYNAM NODYNAM
NOLIB LIB
NOTHREAD THREAD
MDECK NOLIB LIB
SQL NOLIB LIB
TEST OPTIMIZE NOOPTIMIZE

関連参照
コンパイラー環境変数
cob2 オプション
コンパイラー指示ステートメント


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)