Встроенный способ отключить проверки Clang-Tidy

Я пытаюсь настроить 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 заменено на clang-tidy, К сожалению при использовании 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 сам выводит при запуске через источник.

Это с clang а также clang-tidy 3.8 на x86_64 Linux.

11

Решение

Просто добавьте комментарий, содержащий строку NOLINT в любом месте строки, которую вы хотите игнорировать clang-tidy. Например:

badcode;  // NOLINT

// NOLINTNEXTLINE
badcode;

badcode; // NOLINT(cert-err-58-cpp)

Смотри документацию Вот.

16

Другие решения

Других решений пока нет …