首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用compile_commands.json时Cppcheck内嵌抑制

使用compile_commands.json时Cppcheck内嵌抑制
EN

Stack Overflow用户
提问于 2020-03-27 22:44:17
回答 1查看 1.1K关注 0票数 1

我正在尝试学习cppcheck,因此我正在将它集成到我的示例项目的travis构建中。我修复了许多问题,因为cppcheck,但有一些假阳性,我想忽略通过内联抑制。

a.cpp

代码语言:javascript
复制
struct A {
  int i;
};

// cppcheck-suppress unusedFunction
A operator+(const A &a1, const A &a2) {
  return A{a1.i + a2.i};
}

int main() {
  return 0;
}

compile_commands.json

代码语言:javascript
复制
[
  {
    "directory": "/path/to/source",
    "command": "/usr/bin/clang++-9 -std=gnu++17 -o a.o -c a.cpp",
    "file": "a.cpp"
  }
]

当我以cppcheck --enable=all --inline-suppr a.cpp的形式运行cppcheck (版本1.82)时,就可以了。但是,当我使用compile_commands.json文件(如cppcheck --enable=all --inline-suppr --project=compile_commands.json )运行它时,我得到了以下结果:

代码语言:javascript
复制
Checking a.cpp ...
[a.cpp:6]: (style) The function 'operator+' is never used.

在上述情况下,cppcheck的行为有什么不同的原因吗?如果不是,这有可能是个bug吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-28 08:52:11

我认为这是1.82版本中的一个bug,因为对于一个更新的版本,它正在完美地工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60895087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档