禁用来自 cpplint 的特定警告

Posted

技术标签:

【中文标题】禁用来自 cpplint 的特定警告【英文标题】:Disable specific warnings from cpplint 【发布时间】:2018-01-21 21:34:03 【问题描述】:

在运行 cpplint 时,我遇到了一些我想完全禁用的警告。特别是版权信息和空格:

range.h:0:未找到版权信息。你应该有一行:

“版权 [年份]” [法律/版权] [5]

range.h:10:code 和 cmets 之间最好至少有两个空格

[空白/cmets] [2]

我该如何做到这一点?理想情况下会修改 CPPLINT.cfg 文件,但我会采用内联注释或命令行标志。我找不到任何关于禁用规则的文档。

【问题讨论】:

看起来有一些机制可以禁用规则,但我还是没有看到任何文档 =/ github.com/google/styleguide/blob/gh-pages/cpplint/… @Someprogrammerdude 不,我显然只是将一行链接到源代码而没有试图理解它。 cpplint --help word 吐出 180 行内容。是的,我确实尝试过。不知怎的,我错过了它。它发生了。在我看来,你急于做出判断是非常不友好的。您可以考虑在您的回复中尝试包容。 【参考方案1】:

您可以在CPPLINT.cfg中配置过滤器:

filter=-whitespace,-legal/copyright

【讨论】:

对于任何试图找出从哪里获取过滤器列表的人,命令行 usgae 消息说:要查看 cpplint 中使用的所有类别的列表,请不传递参数:cpplint --filter= 有没有办法通过文件顶部的注释来指定过滤器,以便它们在整个文件中都有效?我们从使用一些 3rd 方宏中得到了大量的 lint 错误,例如MATCHER_P 来自 Google Mock。

以上是关于禁用来自 cpplint 的特定警告的主要内容,如果未能解决你的问题,请参考以下文章

禁用所有 gcc 警告

禁用 /W4 警告以进行提升

无法禁用特定编译器警告 (4100)

如何在 VSCode 中禁用 TypeScript 警告?

如何查找和禁用特定的 NVCC 警告?

Visual Studio 禁用特定目录中文件的警告