インテル® Fortran コンパイラー 19.0 デベロッパー・ガイドおよびリファレンス
Linux* および macOS* システムでは、デフォルトのランタイム・ライブラリー例外ハンドラーを上書きするには、アプリケーションで目的の信号の処理を変更する signal を呼び出す必要があります。
例えば、abort() を呼び出して core ファイルを生成するように、信号の処理を変更するとします。
次の例では、clear_signal_ という関数を追加し、signal() を呼び出して SIGABRT 信号の処理を変更します。
#include <signal.h> void clear_signal_() { signal (SIGABRT, SIG_DFL); } int myabort_() { abort(); return 0; }
ローカルの clear_signal() ルーチンの呼び出しをメインに追加する必要があります。この場合、ローカルの myabort() ルーチンの呼び出しの前に呼び出します。
program aborts integer i call clear_signal() i = 3 if (i < 5) then call myabort() end if end