================
@@ -702,6 +704,10 @@ ParsedAST::build(llvm::StringRef Filename, const 
ParseInputs &Inputs,
     log("Execute() failed when building AST for {0}: {1}", MainInput.getFile(),
         toString(std::move(Err)));
 
+  // Disable the macro collector for the remainder of this function, e.g.
+  // clang-tidy checkers.
+  MacroCollectorPtr->doneParse();
----------------
HighCommander4 wrote:

The first approach I tried was to remove `CollectMainFileMacros` from the 
preprocessor callbacks at this point, however the current `Preprocessor` API 
does not make that easy to do (adding a new callback creates a 
`PPChainedCallbacks`, and there are further internal calls made to 
`addPPCallbacks()` that chain other ones on top of ours). So, I opted to 
"neutralize" our callback rather than try to remove it.

https://github.com/llvm/llvm-project/pull/106329
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to