我正在为一个项目设置clang-tidy。我希望能够有干净的输出,并鼓励在可能的情况下使用-fix模式。但是,在个别情况下需要异常。
尽可能多地使用它
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wreserved-id-macro"
// Code that is being specially exempted
#pragma clang diagnostic pop对于想要在本地禁用编译器警告的等效情况,是否可以从clang-tidy执行类似的操作?
我试过了
#pragma clang diagnostic push
#pragma clang diagnostic ignored "readability-identifier-naming"
// Code that is being specially exempted
#pragma clang diagnostic pop也用clang-tidy取代了clang。不幸的是,当使用clang作为编译指示目标并使用常规的clang进行编译时,我得到了编译警告
warning: pragma diagnostic expected option name (e.g. "-Wundef") [-Wunknown-pragmas]和
warning: unknown pragma ignored [clang-diagnostic-unknown-pragmas]在编译时,如果我用clang-tidy代替clang。在源代码上运行时,也不会对clang-tidy本身的输出产生影响。
这是在x86_64 Linux上的clang和clang-tidy 3.8。
发布于 2016-10-30 09:44:00
只需在您希望clang-tidy忽略的行的任何位置添加一个包含字符串NOLINT的注释。例如:
badcode; // NOLINT
// NOLINTNEXTLINE
badcode;
badcode; // NOLINT(cert-err-58-cpp)请参阅文档here。
https://stackoverflow.com/questions/37950439
复制相似问题