futogergely added a comment. In D91000#3862210 <https://reviews.llvm.org/D91000#3862210>, @whisperity wrote:
> In D91000#3861942 <https://reviews.llvm.org/D91000#3861942>, @aaron.ballman > wrote: > >> My concern with that approach was that we pay the full expense of doing the >> matches only get get into the `check()` function to bail out on all the >> Annex K functions, but now that there are replacements outside of Annex K, I >> don't see a way around paying that expense, so I think my concern has been >> addressed as well as it could have been. > > I think that Clang-Tidy checks are instantiated per AST. I will look into > whether we can somehow do the disabling of the check as early as possible! > (In that case, we could simply NOT register the matcher related to Annex-K > functions.) Either way, I'll do a rebase, re-run the tests and etc., and > likely take over the check. I checked, and I think that at the point of ClangTidyCheck::registerMatchers the preprocessor has not been executed yet... (and we need the value of macros __STDC_LIB_EXT1__ and __STDC_WANT_LIB_EXT1__ to decide if we need to register some matchers or not) @whisperity could you maybe double-check it please? What we could do is: 1. add a new checker option to decide if we suggest replacements from AnnexK. We could avoid registering matchers this way, but I don't really like this, having an option for something we could decide from the defined macros. 2. As a TODO, we could make possible to register checkers AFTER the preprocessor is executed. I have not looked into this, so I don't really know if it is possible at all in the current architecture. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91000/new/ https://reviews.llvm.org/D91000 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits