clang-tidy在使用readable -identifier-naming时将namespace视为全局变量.&l



我使用clang-tidy来检测源代码。在文件.clang-tidy中,我定义了:

Checks: '-*,readability-identifier-naming'
CheckOptions:
...
- { key: readability-identifier-naming.NamespacePrefix,               value: n1_        },
- { key: readability-identifier-naming.GlobalVariablePrefix,          value: g1_        },
...

myHeader.h:

namespace n1_test
{
...
}

Linux Mint 19.2 (Tina)上使用clang-tidy(尝试了11.1.0,13.0.0git(都是我自己编译的)和10.0.0(下载的))检查这个文件

:

clang-tidy-11.1.0 -export-fixes=fixes.txt /tmp/clangTest/mylib/source/myHeader.h -- -I/tmp/clangTest/myLib/source

结果:

warning: invalid case style for global variable 'n1_test' [readability-identifier-naming]
namespace n1_test {
^~~~~~~~~~
g1_n1_test

我不明白为什么NamespacePrefix不起作用,clang-tidy将命名空间视为全局变量。我还测试了NamespaceCase,它不能工作。

PS:根据文档,这应该可以工作

不能直接对头文件使用clang-tidy。相反,我必须检查cpp文件,并添加-header-filter=.*来检查标题:

clang-tidy-11.1.0 -header-filter=.* -export-fixes=fixes.txt /tmp/clangTest/mylib/source/main.cpp -- -I/tmp/clangTest/myLib/source

相关内容

  • 没有找到相关文章

最新更新