インテル® Fortran コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

トレースバック

致命的なエラー状態が原因で Fortran プログラムが終了した場合、Fortran ランタイムシステムは、ランタイムメッセージの後に診断情報を表示します。

Fortran ランタイムシステムは呼び出しの流れを調査して、エラーを発生させる原因となった一連の呼び出しのレポートを、デフォルトの診断メッセージレポートの一部として生成します。この処理はトレースバックと呼ばれます。最小限表示される情報には、以下が含まれます。

[Routine]、[Line]、および [Source] フィールドに表示される情報は、プログラムが traceback オプションを指定してコンパイルされていたかどうかによって異なります。

traceback オプションが指定されていると、表示される情報は次のようになります。

 forrtl: 致命的なエラー (24): 読み取り中にファイルの最後に達しました。ユニット 10、ファイル E:\USERS\xxx.dat
 Image             PC        Routine         Line     Source
 libifcorert.dll   1000A3B2  Unknown         Unknown  Unknown
 libifcorert.dll   1000A184  Unknown         Unknown  Unknown
 libifcorert.dll   10009324  Unknown         Unknown  Unknown
 libifcorert.dll   10009596  Unknown         Unknown  Unknown
 libifcorert.dll   10024193  Unknown         Unknown  Unknown
 teof.exe          004011A9  AGAIN                21  teof.for
 teof.exe          004010DD  GO                   15  teof.for
 teof.exe          004010A7  WE                   11  teof.for
 teof.exe          00401071  HERE                  7  teof.for
 teof.exe          00401035  TEOF                  3  teof.for
 teof.exe          004013D9  Unknown         Unknown  Unknown
 teof.exe          004012DF  Unknown         Unknown  Unknown
 KERNEL32.dll      77F1B304  Unknown         Unknown  Unknown

同じプログラムが traceback オプションなしでコンパイルされた場合、表示される情報は次のように変わります。

traceback オプションを指定すると、プログラムカウンター (PC) とソースファイル行の関係情報がエラーメッセージ情報に含まれるので、致命的なランタイムエラーの原因を特定する作業が簡単になります。

traceback オプションを指定して生成される Fortran オブジェクトには、コンパイラーによって生成された補足情報が含まれます。この補足情報は、Fortran ランタイムシステムが PC 値を、実行されたルーチン名、Fortran ソースファイル、およびソースファイル内の行番号と自動的に関係付けるために使用されます。この情報は、ランタイムエラーの診断レポートに表示されます。

自動的な PC の関連付けは、Fortran コードでのみサポートされています。Fortran 以外のコードに対しては、16 進の PC 値のみが報告されます。

関連情報