メインコンテンツ

AUTOSAR C++14 Rule A2-7-1

The character \ shall not occur as a last character of a C++ comment

説明

ルール定義

文字 \ は C++ コメントの最後の文字として使用しないものとします。

根拠

コードの単一行コメントの最後が文字 \ の場合は、次の行にコメントが続いていると解釈されます。文字 \ で終わる単一行コメントは、コードのセクションを誤ってコメントアウトする可能性があります。

Polyspace 実装

Polyspace は、C++ スタイルのコメントの最後が文字 \ でないかどうかをチェックします。

トラブルシューティング

ルール違反が想定されるものの、Polyspace® から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。

すべて展開する

#include <cstdint>

void foo()
{
  int32_t idx = 0;
  int32_t limit = 20;
  int32_t count = 20;
  ++idx; //Noncompliant - Incrementing index before the loop starts// Requirement X\\
  for(;idx<limit;++idx)
  {
     --count;
  }
}

for ループ定義は、単一行コメントが文字 \ で終わっているため、コメントアウトされます。その結果、count は一度しかデクリメントされませんが、これは誤りの可能性があります。チェッカーは、単一行コメント内の文字 \ を強調表示することによって、この問題にフラグを設定します。

チェック情報

グループ: 構文規則
カテゴリ: Required、Automated

バージョン履歴

R2020a で導入