このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
MISRA C:2023 Rule 8.3
All declarations of an object or function shall use the same names and type qualifiers
R2024a 以降
説明
ルール定義
All declarations of an object or function shall use the same names and type qualifiers 1 .
根拠
同一のオブジェクトまたは関数の宣言全体で、常にパラメーター名と型を使用すると、より厳密な型指定となります。すべての宣言で同じ関数インターフェイスが使用されていることを容易にチェックできるようになります。
例外:
同じ基本型の互換性のあるバージョンの使用は、このルールに違反しません。たとえば、
signed
、int
、signed int
は互換的に使用できます。名前なし関数パラメーターの使用は、このルールに違反しません。たとえば、宣言
void foo(int a)
は宣言void foo(int)
と互換的に使用できます。
Polyspace 実装
ルール チェッカーは、パラメーター名またはデータ型が、複数の宣言の間または宣言と定義の間で異なっている状況を検出します。チェッカーは、すべての翻訳単位内の宣言を考慮し、コンパイラによって検出されない可能性のある問題にフラグを設定します。
トラブルシューティング
ルール違反を想定していてもその違反が表示されない場合、コーディング規約違反が想定どおりに表示されない理由の診断を参照します。
例
チェック情報
グループ: 宣言と定義 |
カテゴリ: 必要 |
AGC カテゴリ: 必要 |
バージョン履歴
R2024a で導入
参考
1 All MISRA coding rules and directives are © Copyright The MISRA Consortium Limited 2021.
The MISRA coding standards referenced in the Polyspace® Bug Finder™ documentation are from the following MISRA standards:
MISRA C:2004
MISRA C:2012
MISRA C:2023
MISRA C++:2008
MISRA C++:2023
MISRA and MISRA C are registered trademarks of The MISRA Consortium Limited 2021.