check

 

ランタイム時に特定の条件をチェックします。

IDE オプション

Windows:

[Run-time (ランタイム)] > [Runtime Error Checking (ランタイム・エラー・チェック)] (/nocheck/check:all、または /xcheck:none)

[Run-time (ランタイム)] > [Check Array and String Bounds (配列と文字列範囲のチェック)] (/check:[no]bounds)

[Run-time (ランタイム)] > [Check Uninitialized Variables (初期化されていない変数のチェック)] (/check:[no]uninit)

[Run-time (ランタイム)] > [Check Edit Descriptor Data Type (書式のデータ型のチェック)] (/check:[no]format)

[Run-time (ランタイム)] > [Check Edit Descriptor Data Size (書式の切り捨てのチェック)] (/check:[no]output_conversion)

[Run-time (ランタイム)] > [Check For Actual Arguments Using Temporary Storage (一時記憶域を使用する実引数のチェック)] (/check:[no]arg_temp_created)

[Run-time (ランタイム)] > [Check For Null Pointers and Allocatable Array References (ヌルポインターと割付け可能な配列参照のチェック)] (/check:[no]pointers)

Linux: なし

Mac OS X: [Run-time (ランタイム)] > [Runtime Error Checking (ランタイム・エラー・チェック)] (-check all、-check none)

[Run-time (ランタイム)] > [Check Array and String Bounds (配列と文字列範囲のチェック)] (-check [no]bounds)

[Run-time (ランタイム)] > [Check Edit Descriptor Data Type (書式のデータ型のチェック)] (-check [no]format)

[Run-time (ランタイム)] > [Check Edit Descriptor Data Size (書式の切り捨てのチェック)] (-check [no]output_conversion)

[Run-time (ランタイム)] > [Check For Actual Arguments Using Temporary Storage (一時記憶域を使用する実引数のチェック)] (-check [no]arg_temp_created)

[Run-time (ランタイム)] > [Check Uninitialized Variables (初期化されていない変数のチェック)] (-check [no]uninit)

[Run-time (ランタイム)] > [Check For Null Pointers and Allocatable Array References (ヌルポインターと割付け可能な配列参照のチェック)] (/check:[no]pointers)

アーキテクチャー

IA-32、インテル® 64、IA-64 アーキテクチャー

構文

Linux および Mac OS X:

-check [keyword]

-nocheck

Windows:

/check[:keyword]

/nocheck

引数

keyword

確認する条件を指定します。設定可能な値は以下のとおりです。

none

すべての check オプションを有効にします。

[no]arg_temp_created

ルーチン呼び出し前の実引数の確認を行うかどうかを指定します。

[no]bounds

配列の添字および部分文字列を処理する式に対して、確認を行うかどうかを指定します。

[no]format

出力用に書式化される項目のデータ型の確認を行うかどうかを指定します。

[no]output_conversion

指定された書式記述子フィールド内のデータ項目における適合性の確認を行うかどうかを指定します。

[no]pointers

関連付けが解除されたポインター、または初期化されていないポインター、あるいは割り付けられていない割り当て可能なオブジェクトのチェックを行うかどうかを指定します。

[no]uninit

初期化されていない変数の確認を行うかどうかを指定します。

all

すべての check オプションを有効にします。

デフォルト

nocheck

ランタイムエラーをチェックしません。vms オプションを指定する場合、デフォルトは check format および check output_conversion です。

説明

このオプションは、ランタイム時に特定の条件を確認します。

オプション

説明

check none

すべての check オプションを無効にします (nocheck と同じ)。

check arg_temp_created

ルーチンが呼び出される前に、実引数が一時的な記憶域にコピーされているかどうかのランタイムチェックを有効にします。コピーがランタイム時に作成されている場合は、メッセージが表示されます。

check bounds

配列の添字および部分文字列を処理する式に対して、コンパイル時およびランタイム時のチェックを有効にします。配列添字が配列に設定された次元境界を超えていたり、文字長を超えている場合、エラーが報告されます。

配列に対しては、個々の次元で境界がチェックされます。最後の次元が * として指定されている配列が仮引数として使用されている場合、その配列に対しては、配列境界のチェックが行われません。また、上位次元と下位次元の両方が 1 の場合にも、配列境界のチェックは行われません。

プログラムのデバッグが終了したら、このオプションを省略することで、実行ファイルのサイズを小さくして、ランタイム・パフォーマンスを若干向上させることができます。

check format

出力用に書式化される項目のデータ型が FORMAT 記述子と一致しない場合、致命的なランタイムエラー FORVARMIS を発行します (例: 編集記述子 I によって REAL*4 項目の書式が設定された場合)。

check noformat では、データ項目の長さが足りない場合 (例: INTEGER*2 項目を編集記述子 E に渡すとエラーになります) を除き、データ項目の書式は指定した記述子を使用して設定されます。

check output_conversion

データ項目が大きすぎるため、指定された書式フィールドの長さにすべての桁数が収まらない場合は、継続可能なランタイム・エラー・メッセージ OUTCONERR を発行します。書式の切り捨てが発生し (フィールドがアスタリスク (*) で埋められ)、実行が続けられます。

check pointers

関連付けが解除されたポインターや初期化されていない Fortran ポインター、割り付けられていない割り当て可能なオブジェクト、および初期化されていない整数ポインターのランタイムチェックを有効にします。

check uninit

初期化されていない変数のランタイムチェックを有効にします。変数が書き込まれる前に読み取られる場合、ランタイム・エラー・ルーチンが呼び出されます。SAVE 属性を持たない INTEGER、REAL、COMPLEX、または LOGICAL の各組み込み型ローカルスカラー変数のみチェックされます。

check all

すべての check オプションを有効にします。これは、keyword なしで check を指定するのと同じです。

エラーの発生場所についての詳細な情報を得るには、traceback オプションを使用します。

代替オプション

check none

Linux および Mac OS X: -nocheck

Windows: /nocheck/4Nb

check bounds

Linux および Mac OS X: -CB

Windows: /CB

check uninit

Linux および Mac OS X: -CU

Windows: /RTCu/CU

check all

Linux および Mac OS X: -check、-C

Windows: /check/4Yb/C

関連情報