[clang-tools-extra] Add option to exclude headers from clang-tidy analysis (PR #91400)

Justin Cady via cfe-commits cfe-commits at lists.llvm.org
Thu May 9 14:06:26 PDT 2024


================
@@ -311,7 +311,12 @@ ClangTidyDiagnosticConsumer::ClangTidyDiagnosticConsumer(
     : Context(Ctx), ExternalDiagEngine(ExternalDiagEngine),
       RemoveIncompatibleErrors(RemoveIncompatibleErrors),
       GetFixesFromNotes(GetFixesFromNotes),
-      EnableNolintBlocks(EnableNolintBlocks) {}
+      EnableNolintBlocks(EnableNolintBlocks) {
+
+  if (Context.getOptions().ExcludeHeaderFilterRegex)
+    ExcludeHeaderFilter = std::make_unique<llvm::Regex>(
+        *Context.getOptions().ExcludeHeaderFilterRegex);
+}
----------------
justincady wrote:

Well, in the initial PR `ExcludeHeaderFilter` mirrored `HeaderFilter` behavior exactly. I changed it because @PiotrZSL made a nearly identical comment to yours about saving the call to `match` on an empty regex (which I think is handled in the latest revision).

I _could_ migrate `HeaderFilter` to mirror the new and improved `ExcludeHeaderFilter`...though I worry a bit about this change growing larger and larger. What do you think?

https://github.com/llvm/llvm-project/pull/91400


More information about the cfe-commits mailing list