主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

检查 MISRA C++:2023 (-misra-cpp-2023)

检查是否存在违反 MISRA C++:2023 规则和指令的情形

自 R2024b 起

描述

指定是否检查违反 MISRA™ C++:2023 规则和指令的情形1 .此选项的每个值对应一个要检查的规则子集。

设置选项

使用以下方法之一设置选项:

为何使用此选项

使用此选项指定 MISRA C++:2023 规则和指令的一个子集,Polyspace 会对其进行检查。

分析完成后,结果列表窗格中会列出检测到的编码标准违规。在窗格中,对于每项编码违规,Polyspace 都会为与该违规相关的关键字或标识符显示一个 符号。

设置

默认值: mandatory-required

强制

检查强制规范。

mandatory-required

检查强制规范和必需规范。

  • 强制规范:您的代码必须符合这些规范。

  • 必需规范:您可以偏离这些规范。但是,您必须提供正式的偏离规范记录,并且您偏离规范的做法必须获得授权。

single-unit-rules

检查仅适用于单个转换单元的规则子集。这些规则在分析的编译阶段进行检查。

system-decidable-rules

检查 single-unit-rules 子集中的规则,以及适用于程序文件集合的某些规则。这些附加规则是在集成级别应用的复杂度较低的规则。由于这些规则涉及多个转换单元,因而只能在集成层面进行检查。这些规则会在分析的编译和链接阶段进行检查。

all

检查强制、必需和建议规范。

from-file

指定一个 XML 文件,您可以在其中针对此编码标准配置自定义检查项选择。要创建配置文件,请点击 ,然后从检查项选择窗口的右侧窗格中,选择此编码标准中要检查的规则和建议。保存该文件。

要使用或更新某个现有配置文件,请在检查项选择窗口中,在提供的字段中输入该文件的完整路径,或者点击浏览

如果您将选项设置为 from-file,请启用使用文件设置检查项 (-checkers-selection-file)

依赖关系

仅在您将源代码语言 (-lang) 设置为 CPPC-CPP 时,此选项才可用。

对于具有混合 C 和 C++ 代码的工程,MISRA C++:2023 检查项仅分析 .cpp 文件。

命令行信息

在命令行中使用 -misra-cpp-2023 命令检查是否存在违反 MISRA C++ 规则的情形。

参数:-misra-cpp-2023
值:mandatory | mandatory-required | single-unit-rules | system-decidable-rules | all | from-file
示例 (Bug Finder):polyspace-bug-finder -sources file_name -misra-cpp-2023 all
示例 (Bug Finder Server):polyspace-bug-finder-server -sources file_name -misra-cpp-2023 all

或者,通过检查项激活 XML 文件来启用所有或特定 MISRA C++:2023 规则。请参阅检查项激活文件 (-checkers-activation-file)

版本历史记录

在 R2024b 中推出


1  MISRA is a registered trademark of MIRA Ltd., held on behalf of the MISRA Consortium.