【问题标题】:CPPCheck returns inconsistent resultsCPPCheck 返回不一致的结果
【发布时间】:2016-12-07 02:03:02
【问题描述】:

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

当我检查一个库时,我会遇到一些我感兴趣的检查失败,一切都很好。但是此时我只有一个文本文件列表,其中包含我通过 '--file-list=...' 传递的那个库中的所有 *.cpp 和 *.h

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

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

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

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

【问题讨论】:

    标签: c++ cppcheck


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2016-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      相关资源
      最近更新 更多