このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
計算例外の信号ハンドラーからの戻り値
プログラム エラーから信号ハンドラーが通常どおりに値を返す場合の未定義の動作
説明
この欠陥は、計算例外の信号 SIGFPE
、SIGILL
、または SIGSEGV
をキャッチした後に信号ハンドラーが値を返した場合に発生します。
リスク
計算例外から通常どおり値を返す信号ハンドラーは未定義の動作です。信号をトリガーしたエラーの修正をハンドラーで試みる場合でも、プログラムは予期せぬ動作をする可能性があります。
修正方法
計算の前に変数の値の有効性をチェックして、信号ハンドラーを使用した例外のキャッチを回避します。ハンドラーによる計算例外の信号のキャッチを避けられない場合は、ハンドラー内で abort()
、quick_exit()
、または _Exit()
を呼び出してプログラムを停止します。
例
結果情報
グループ: プログラミング |
言語: C | C++ |
既定値: 手書きコードはオン、生成コードはオフ |
コマンド ライン構文: SIG_HANDLER_COMP_EXCP_RETURN
|
影響度: Low |
バージョン履歴
R2017b で導入