C and C++


LANG.FUNCS.SAP : static配列引数

要旨

[]の間に static キーワードによる引数宣言を含む関数。

このチェックはビルトイン C99 のコードにのみ適用されます。 C90 および C++では static 配列引数は含まれません

See also Array Parameter.

プロパティ

クラス名 Static Array Parameter
日本語クラス名 static配列引数
クラス分類 信頼性 (reliability)
ニーモニック LANG.FUNCS.SAP
カテゴリー
MisraC2023 MisraC2023:17.6 The declaration of an array parameter shall not contain the static keyword between the [ ]
Misra2012 Misra2012:17.6 The declaration of an array parameter shall not contain the static keyword between the [ ]
AUTOSARC++14 AUTOSARC++14:A18-1-1 C-style arrays shall not be used.
対応言語 C および C++ で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっており、プロジェクトには非正規の C向けAST が必要になります。有効にするにはプロジェクト設定ファイル (configuration file) に以下の WARNING_FILTER ルールと RETAIN_UNNORMALIZED_C_AST 設定を追加してください。
RETAIN_UNNORMALIZED_C_AST = Yes
WARNING_FILTER += allow class="Static Array Parameter"
注:非正規化された AST を継続して使用した場合、使用ディスク容量が増加し解析時間が長くなる可能性があります。

void decl_static(char a[static 20]);  /* 'Static Array Parameter' warning issued here */

void decl_nostatic(char a[20]);                            /* no static keyword between [ ] */

void decl_nosize(char a[]);                                /* no static keyword between [ ] */

const int ten=10;

void def(char a[static ten],          /* 'Static Array Parameter' warning issued here */
         char b[ten]){                                     /* no static keyword between [ ] */
    return;
}

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

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