是否有Cppcheck消息列表?

时间:2015-07-23 04:29:53

标签: static-analysis cppcheck

我们的团队以前使用Lint作为静态代码分析器,但它变得太杂乱,噪音太大。

我们正在使用C ++ 03频繁使用Boost,而Lint似乎不喜欢Boost(我听说这在后来的版本中变得更好)。我开始查看其他静态代码分析器并遇到Cppcheck并尝试了它。我对它所警告的内容印象非常深刻(我已经看过十几个信息和样式问题)。

我感兴趣的是:是否有Cppcheck发布的所有Cppcheck消息的列表,类似于how LintPVS-Studio都有他们的消息列表? official Cppcheck website列表:

  • 超出界限检查
  • 内存泄漏检查
  • 检测可能的空指针解除引用
  • 检查未初始化的变量
  • 检查STL的无效使用
  • 检查例外安全
  • 如果使用过时或不安全的功能,则发出警告
  • 警告未使用或冗余的代码
  • 检测指示错误的各种可疑代码
  • ...

但是我对类似于Lint和PVS-Studio的东西更感兴趣,类似于在Visual Studio中显示结果的方式:

ID | Category/Severity | Text

1 个答案:

答案 0 :(得分:13)

可以使用at the project's wiki的Cppcheck检查列表,如上所述,您还可以通过运行命令行来获取列表:

$ cppcheck --doc

$ cppcheck --errorlist

错误列表输出一个包含您想要的所有三件事的XML文件。这是一个小例子:

<error id="unnecessaryForwardDeclaration" severity="style" msg="The variable &apos;name&apos; forward declaration is unnecessary. Type variable is already declared earlier."/>
<error id="variableHidingEnum" severity="style" msg="variable &apos;name&apos; hides enumerator with same name"/>
<error id="unnecessaryQualification" severity="style" msg="The extra qualification &apos;type&apos; is unnecessary and is considered an error by many compilers."/>