C and C++


LANG.FUNCS.NORETURN : Use of Noreturn

要旨

A use of the _Noreturn specifier, or of features from <stdnoreturn.h>.

プロパティ

クラス名 Use of Noreturn
日本語クラス名 Use of Noreturn
クラス分類 スタイル (style)
ニーモニック LANG.FUNCS.NORETURN
カテゴリー
MisraC2023 MisraC2023:1.4 Emergent language features shall not be used
Misra2012 Misra2012:1.4 Emergent language features shall not be used
CERT-C CERT-C:MSC23-C Beware of vendor-specific library and language differences
対応言語 C および C++ で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっており、プロジェクトには非正規の C向けAST が必要になります。有効にするにはプロジェクト設定ファイル (configuration file) に以下の WARNING_FILTER ルールと RETAIN_UNNORMALIZED_C_AST 設定を追加してください。
RETAIN_UNNORMALIZED_C_AST = Yes
WARNING_FILTER += allow class="Use of Noreturn"
注:非正規化された AST を継続して使用した場合、使用ディスク容量が増加し解析時間が長くなる可能性があります。

_Noreturn void f(){ /* 'Use of Noreturn' warning issued here */
  for(;;);                   /* ('Empty for Statement' warning issued here) */
}

/* No warning because this function does not use _Noreturn, even
 * though the function still never returns.
 */
void g(){
    for(;;);                 /* ('Empty for Statement' warning issued here) */
}

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。