J'essaie de mettre en place un rangement pour un projet. J'aimerais pouvoir avoir une sortie propre et encourager l'utilisation du mode -fix lorsque cela est possible. Cependant, il existe des cas individuels où une exception est nécessaire.
Autant qu'il est possible d'utiliser
#pragma clang diagnostic Push
#pragma clang diagnostic ignored "-Wreserved-id-macro"
// Code that is being specially exempted
#pragma clang diagnostic pop
pour le cas équivalent où l'on veut désactiver localement un avertissement du compilateur, est-il possible de faire quelque chose de similaire à partir de clang-tidy?
J'ai essayé
#pragma clang diagnostic Push
#pragma clang diagnostic ignored "readability-identifier-naming"
// Code that is being specially exempted
#pragma clang diagnostic pop
et aussi avec clang
remplacé par clang-tidy
. Malheureusement, lorsque j'utilise clang
comme cible de pragma et que je compile avec un clang normal, j'obtiens l'avertissement de compilation
warning: pragma diagnostic expected option name (e.g. "-Wundef") [-Wunknown-pragmas]
et
warning: unknown pragma ignored [clang-diagnostic-unknown-pragmas]
lors de la compilation si j'utilise clang-tidy
à la place de clang
. Ni avoir un impact sur ce que clang-tidy
lui-même sort lorsqu'il est exécuté sur la source.
C'est avec clang
et clang-tidy
3.8 sous x86_64 Linux.
Ajoutez simplement un commentaire contenant la chaîne NOLINT n'importe où sur la ligne que vous souhaitez ignorer. Par exemple:
badcode; // NOLINT
// NOLINTNEXTLINE
badcode;
badcode; // NOLINT(cert-err-58-cpp)
Voir la documentation ici .