【问题标题】:PVS Studio: Suppress V677 from cross-compiler system librariesPVS Studio:从交叉编译器系统库中抑制 V677
【发布时间】:2020-03-09 15:48:30
【问题描述】:

我正在为 Cortex-M 处理器编译一个项目,它具有标准类型的编译器特定库。当我使用 PVS-Studio 分析项目时,任何真正的积极因素都会被淹没

/opt/local/gcc-arm-none-eabi-7-2018-q2-update/arm-none-eabi/include/sys/_stdint.h   20  warn    V677 Custom declaration of a standard 'int8_t' type. The declaration from system header files should be used instead.

我熟悉this question,但在我的情况下,我必须使用编译器头文件并将编译器路径添加到排除列表并没有帮助,因为问题在于预处理后的包含。

有没有办法抑制来自包含文件夹的错误,或者抑制配置文件中的错误类型?

【问题讨论】:

    标签: pvs-studio


    【解决方案1】:

    我对这个问题很熟悉,但就我而言,我必须使用 编译器头文件并将编译器路径添加到排除列表不会 帮助,因为问题在于预处理后的夹杂物。

    即使在生成的预处理文件中包含头文件,只要预处理文件包含包含头的原始路径,您提到的问题中描述的排除机制仍然有效,即它应该排除来自包含的标头的消息。您是否尝试将包含系统标头的目录添加到 PVS-Studio 排除目录?

    另外,您可以尝试在分析后使用 plog-converter 工具过滤分析结果。

    有没有办法抑制来自包含的错误 文件夹,还是隐藏配置文件中的错误类型?

    您可以尝试在源文件或 .pvsconfig 文件中使用 special comments 来禁用特定的分析器诊断。

    【讨论】:

    • 我最终过滤了该特定错误,即使不完美也足够好。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多