AUTOSAR C++14 Rule A2-10-6
A class or enumeration name shall not be hidden by a variable, function or enumerator declaration in the same scope
説明
ルール定義
クラス名または列挙名は、同じスコープ内の変数、関数、または列挙子の宣言で隠さないものとします。
根拠
変数、データ メンバー、関数、または列挙子の名前が同じスコープ内のクラスまたは列挙の名前と同じである場合は、後者が隠されます。つまり、その名前のすべての使用が、宣言の順序に関係なく、クラスまたは列挙ではなく、変数、データ メンバー、関数、または列挙子を参照します。隠されたクラスまたは列挙は、誤解されやすく、コンパイル エラーにつながる可能性があります。クラスや列挙を宣言するときに名前を再利用しないでください。
Polyspace 実装
Polyspace® は、同じブロック内のクラスまたは列挙と名前が同じである変数、データ メンバー、関数、または列挙子の宣言にフラグを設定します。
トラブルシューティング
ルール違反が想定されるものの、Polyspace から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。
例
チェック情報
| グループ: 構文規則 | 
| カテゴリ: Required、Automated | 
バージョン履歴
R2020a で導入