PVS Studio:从 cross-compiler 系统库中抑制 V677

PVS Studio: Suppress V677 from cross-compiler system libraries

我正在为 Cortex-M 处理器编译一个项目,其中有 compiler-specific 个标准类型库。当我用 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.

我熟悉 ,但在我的情况下,我必须使用编译器 headers 并且将编译器路径添加到排除列表中无济于事,因为问题出在包含之后预处理。

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

I'm familiar with this question, but in my case I have to use the compiler headers and adding the compiler paths to exclude list doesn't help as the issue is in inclusions after preprocessing.

即使预处理后的文件中包含header文件,只要预处理后的文件包含被包含的header的原始路径,你问题中描述的排除机制引用仍然有效,即它应该从包含的 header 中排除消息。您是否尝试过将包含系统 headers 的目录添加到 PVS-Studio 排除目录?

此外,您可以尝试过滤生成的分析结果,分析后,使用 plog-converter 工具。

Is there a way to suppress the errors coming from the included folders, or to suppress the error type in the config file?

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