1

我们将 PVS Studio(开源项目的免费变体)与 travis-ci 结合使用,出于某种原因,它会为位于以下位置的文件产生错误/usr/local/clang-3.5.0/lib/clang/3.5.0/include

/usr/local/clang-3.5.0/lib/clang/3.5.0/include/stddef.h:58:1:警告:V677 标准“size_t”类型的自定义声明。应该使用来自系统头文件的声明。
/usr/local/clang-3.5.0/lib/clang/3.5.0/include/stddef.h:86:1:警告:V677 标准“wchar_t”类型的自定义声明。应该使用来自系统头文件的声明。
/usr/local/clang-3.5.0/lib/clang/3.5.0/include/stdarg.h:30:1:警告:V677 标准“va_list”类型的自定义声明。应该使用来自系统头文件的声明。
/usr/local/clang-3.5.0/lib/clang/3.5.0/include/stddef.h:47:1:警告:V677 标准“ptrdiff_t”类型的自定义声明。应该使用来自系统头文件的声明。

这个位置看起来像是非标准编译器的“系统”头文件示例,并且远离项目根目录(AFAIR 位于 /home:标准 travis 位置)。脚本运行使用来自https://www.viva64.com/en/pvs-studio-download-linux/的最新版本,最新运行时间为“Mon Jul 3 20:13:42 UTC 2017”(不幸的是,未保存使用的版本)。

4

2 回答 2

3

如果编译器位于不寻常的地方,建议添加分析器异常的新路径,以便您在报告中仅看到您自己项目代码的警告。

pvs-studio-analyzer analyze ... -e /path/to/exclude-path ...

或者

pvs-studio ... --exclude-path /path/to/exclude-path ...

于 2017-07-07T12:01:47.297 回答
1

如果将 clang 更新到 clang-4.0,PVS 似乎不会检测到错误。

于 2017-07-04T16:52:36.070 回答