2016-06-21 12 views
7

Próbuję ustawić clang-tidy dla projektu. Chciałbym mieć czystą wydajność i zachęcać do używania trybu -fix tam, gdzie to możliwe. Istnieją jednak pojedyncze przypadki, w których potrzebny jest wyjątek.Inline sposób wyłączania sprawdzania clang-tidy

ile jest to możliwe użycie

#pragma clang diagnostic push 
#pragma clang diagnostic ignored "-Wreserved-id-macro" 
// Code that is being specially exempted 
#pragma clang diagnostic pop 

dla równoważnego przypadku, gdy chce się lokalnie wyłączyć ostrzeżenie kompilatora, czy to możliwe, aby zrobić coś podobnego z brzękiem-uporządkowane?

Próbowałem

#pragma clang diagnostic push 
#pragma clang diagnostic ignored "readability-identifier-naming" 
// Code that is being specially exempted 
#pragma clang diagnostic pop 

a także z clang zastąpiony clang-tidy. Niestety podczas korzystania clang jako cel pragma i zestawiania ze zwykłej brzękiem, otrzymuję ostrzeżenie kompilacji

warning: pragma diagnostic expected option name (e.g. "-Wundef") [-Wunknown-pragmas] 

i

warning: unknown pragma ignored [clang-diagnostic-unknown-pragmas] 

podczas kompilacji, jeśli mogę użyć clang-tidy zamiast clang. Nie ma to wpływu na to, co sam generuje po uruchomieniu nad źródłem.

Jest to z clang i clang-tidy 3.8 na Linux x86_64.

+0

Jestem też świadomy https://llvm.org/bugs/show_bug.cgi?id=27910 co może wskazywać, że nie jest to możliwe, ale nie ma dalszych czynności inne niż w oryginale raport. –

Odpowiedz

8

Po prostu dodaj komentarz zawierający ciąg NOLINT w dowolnym miejscu wiersza, który chcesz zignorować. Na przykład:

badcode; // NOLINT 
Powiązane problemy