構文:
/check:keyword,/nocheck,/4Yb または /4Nb
/check,/4Yb,または /4Nb オプションは,特定の実行時検証を行うための余分なコードを生成するかどうかを制御します。実行時検証を使用すると,特定の状況で実行時メッセージが発行されることがあります。
ビジュアル開発環境では,「Fortran」タブの「Run time」カテゴリの「Extended Error Checking」を指定します。
次に /check のキーワードと,/4Yb および /4Nb のオプションを示します。括弧内はビジュアル環境での名称を示しています。
/check:arg_temp_created (Actual Arguments use Temporary Storage) |
/check:bounds (Array and String bounds) |
/check:flawed_pentium (ia32 のみ) (Flawed Pentium) |
/check:format (Edit Descriptor Data Type) |
/check:output_conversion (Edit Descriptor Data Size) |
/check:overflow (Integer Overflow) |
/check:[no]power (Power Operations) |
/check:underflow (Floating Point Underflow) |
/4Yb | /check:none,/nocheck,または /4Nb |
/check または /check:all |
これらのオプションを省略したときの基本設定:
/check:(noarg_temp_created,nobounds,flawed_pentium,noformat, nopower,nooutput_conversion,nooverflow,nounderflow)
ビジュアル開発環境で「Debug」構成を使う場合,「Array and String bounds」の基本設定が,/check:nobounds から /check:bounds に変わります。
次に /check のキーワードと,/4Yb および /4Nb のオプションを示します。括弧内はビジュアル環境での名称を示しています。
ルーチンが呼び出される前に一時記憶域に実引数がコピーされた場合に実行時情報メッセージが表示されるように要求します。/check:noarg_temp_created (基本設定) を指定すると,この条件が発生した時に実行時にメッセージを表示するために必要な余分なコードの生成は行われません。
配列添字か部分列の引用が宣言された境界を越えていた場合に,実行時エラー・メッセージを発行するように要求します。コマンド行と「Release」構成 (ビジュアル開発環境) の基本設定は /check:nobounds で,このような状態でも実行時エラー・メッセージを発行しません。「Debug」構成の基本設定は /check:bounds で,配列添字または部分列が境界を越えたときに,実行時メッセージを発行します。
ia32 システムで,欠陥のある Pentium プロセッサー (586) が検出されたときに,実行時エラー・メッセージを発行するように要求します。基本設定は /check:flawed_pentium で,検出時に実行時エラー・メッセージを発行し,プログラムの実行を停止します。この状態でプログラムの実行を続けさせるには,FOR_RUN_FLAWED_PENTIUM 環境変数を true に設定し,プログラムを再実行します (「実行時の環境変数」を参照)。
Pentium の欠陥についての詳細は,「Intel Pentium の浮動小数点の欠陥」を参照してください。また,FOR_CHECK_FLAWED_PENTIUM ルーチンを使うこともできます。
出力用に書式化される項目のデータ型が編集記述子と一致しないときに,実行時エラー・メッセージを発行するように要求します。/check:noformat を指定すると,この状態での実行時エラー・メッセージの発行を禁止することができます。
書式の切り捨てが起こった (数値が大きすぎて,指定された書式欄長にすべての有効けた数が収まらない) ときに,実行時エラー・メッセージ (63 番) を発行するように要求します。/check:nooutput_conversion を指定すると,書式の切り捨てが起こっても実行時エラー・メッセージは表示されません。
整数オーバーフローが起こったときに,継続可能な実行時メッセージを発行するように要求します。/check:nooverflow を指定すると,この実行時メッセージの発行を禁止することができます。
/check:nopower を指定すると,「0.0 ** 0.0」と,「負値 ** 実数型整数値」に対する実行時エラー・メッセージの発行が禁止されます。この場合,「0.0 ** 0.0」は 1.0 に,「(-3.0) ** 3.0」は -27.0 になります。
式のこの形式に対して実行時エラー・メッセージが発行されることを許可するには,/check:power 指定します。
浮動小数点アンダーフローが起こったときに,実行時メッセージを発行するように要求します。/check:nounderflow を指定すると,浮動小数点アンダーフローが起こったときの実行時メッセージの発行を禁止することができます。
/check:(overflow,bounds,underflow) を設定します。
次のものと等価です。
/check:(noarg_temp_created,nobounds,noformat,nopower, nooutput_conversion,nooverflow,nounderflow)
次のものと等価です。
/check:(arg_temp_created,bounds,flawed_pentium,format, power,output_conversion,overflow,underflow)