CPPCheck返回不一致的结果

CPPCheck returns inconsistent results

本文关键字:结果 不一致 返回 CPPCheck      更新时间:2023-10-16

我已经为一个包含一堆库的大型项目设置了CPPCheck(v1.6.1)。

当我检查一个库时,我得到了一些我感兴趣的检查失败,一切都很好。但是,在这一点上,我只有一个文本文件列表,其中包含该库中所有 *.cpp 和 *.h,我通过"--file-list=..."传递

当然,我确实会收到一些关于缺少包含的错误,因为这个库(比如 MyLibA)包含来自我的另一个库 (MyLibB) 的文件。

所以我现在构造了一个文本文件,其中包含来自MyLibB的所有包含路径,并通过"--include-file=..."将其传递给cppcheck。

在这一点上,我得到了一些关于MyLibB中标头的cpp失败,这并不意外,但是不再报告有关MyLibA的所有错误。

这是一个错误还是我做错了什么?

如果 cppcheck 遇到 #error,则会中止检查。因此,您最终可能会遇到包含标头会触发 #error 的情况(例如,如果您没有在命令行上为 cppcheck 正确设置 -D 预处理器定义)。

这意味着以前检查过的文件将不再被检查,因为测试在标头中中止,即在到达有问题的代码行之前