主要内容

AUTOSAR C++14 Rule M0-1-1

A project shall not contain unreachable code

描述

规则定义

A project shall not contain unreachable code.

理由

此规则会标记因语法原因导致一组语句不可达的情况。例如,return 语句后的代码始终不可达。

不可达代码涉及不必要的维护,并且通常可能指示编程错误。

Polyspace 实现

如果无法访问代码中的语句,Polyspace® 会报告缺陷。

故障排除

如果您预期会出现违规,而 Polyspace 未报告该违规,请参阅诊断为何编码规范违规未按预期显示

示例

全部展开

int func(int arg) {
 int temp = 0;
 switch(arg) {
     temp = arg; // Noncompliant
     case 1:
     {
         break;
     }
     default:
     {
         break;
     }
 }
 return arg;
 arg++; // Noncompliant
}

以下语句不可达:

  • switch 语句内部不属于 casedefault 模块的语句。

  • return 语句后的语句。

检查信息

组:与语言无关的问题
类别:必需、自动

版本历史记录

在 R2019a 中推出