主要内容

配置编码规则检查项和代码度量

激活 MISRA™、AUTOSAR、CERT® 和 JSF® 编码规则集、自定义编码规则和代码度量

您可以使用 Polyspace® Bug Finder™ 检查违反编码标准的情形并计算编码度量。

要检查编码违规,请使用“检查项选择”窗口激活一组编码规则和缺陷。将一组激活的检查项保存到检查项激活文件 (.xml) 中,然后在后续分析中使用该激活文件。请参阅检查项激活文件 (-checkers-activation-file)

或者,您可以激活从特定编码标准中预先选择的规则集。例如,通过使用检查 MISRA C:2023 (-misra-c-2023) 选项,并将其值设置为 mandatory,可激活 MISRA C™:2023 中的强制规则。

您还可以通过指定计算代码度量 (-code-metrics) 选项来计算函数级、文件级和工程级代码度量。此选项可计算工程中的一组代码度量,例如圈复杂度、注释密度或递归次数。

Polyspace 选项

全部展开

使用自定义检查项文件指定必须使用检查项激活 XML 文件来指定检查项。 (自 R2023b 起)
检查项激活文件 (-checkers-activation-file)激活自定义的缺陷和编码规则组合,以进行 Polyspace Bug Finder 分析
检查 MISRA C:2012 (-misra3)Check for violations of MISRA C:2012 rules and directives
使用生成代码的要求 (-misra3-agc-mode)检查是否存在违反适用于生成的代码的 MISRA C:2012 规则和指令的情形
检查 MISRA C:2023 (-misra-c-2023)检查是否存在违反 MISRA C:2023 规则和指令的情形 (自 R2024a 起)
使用生成代码的要求 (-misra-c-2023-agc-mode)检查是否存在违反适用于生成的代码的 MISRA C:2023 规则和指令的情形 (自 R2024a 起)
有效布尔类型 (-boolean-types)Specify data types that coding rule checker must treat as effectively Boolean
检查 SEI CERT-C (-cert-c)检查是否存在违反 CERT C 规则和建议的情形
检查 ISO/IEC TS 17961 (-iso-17961)检查是否存在违反 ISO/IEC TS 17961 规则的情形
检查 MISRA C++:2023 (-misra-cpp-2023)检查是否存在违反 MISRA C++:2023 规则和指令的情形 (自 R2024b 起)
检查 MISRA C++:2008 (-misra-cpp)检查是否存在违反 MISRA C++:2008 规则的情形
检查 JSF AV C++ (-jsf-coding-rules)检查是否存在违反 JSF C++ 规则的情形
检查 AUTOSAR C++14 (-autosar-cpp14)检查 AUTOSAR C++ 14 违规
检查 SEI CERT-C++ (-cert-cpp)检查是否存在违反 CERT C++ 规则的情形
使用文件设置检查项 (-checkers-selection-file)为您的分析定义一组自定义编码标准检查
检查 CWE (-cwe)Check for weaknesses in your code that are enumerated in CWE (自 R2023a 起)
检查自定义规则 (-custom-rules)Follow naming conventions for identifiers
检查规范 (-guidelines)检查是否违反规范
允许的 pragma (-allowed-pragmas)Specify pragma directives that are documented
为源代码和以下项生成结果 (-generate-results-for)指定要进行分析的文件。
不为以下项生成结果 (-do-not-generate-results-for)指定不希望进行分析的文件
为 Bug Finder 使用快速分析模式 (-fast-analysis)Run analysis using faster local mode
-create-checkersCreate new checkers for Polyspace Bug Finder analysis (自 R2023b 起)
计算代码度量 (-code-metrics)计算并显示代码复杂度度量
-start-level-from-oneStart counting the call level or nesting level from one.
-consider-switch-as-single-decision假设一个开关语句是一个单一的决策点,计算其圈复杂度。

系统命令

polyspace-catalog-bundler(System Command) Create user-defined Polyspace coding standards at the DOS or UNIX command line

主题

配置检查项

MISRA 规则

CWE

用户定义的编码标准

代码复杂度度量

Polyspace 规范

Polyspace 自定义规则