[clang] [analyzer][NFC] Introduce framework for checker families (PR #139256)
DonĂ¡t Nagy via cfe-commits
cfe-commits at lists.llvm.org
Tue May 13 05:29:00 PDT 2025
================
@@ -64,9 +65,9 @@ class CheckerFn<RET(Ps...)> {
Func Fn;
public:
- CheckerBase *Checker;
+ CheckerBackend *Checker;
- CheckerFn(CheckerBase *checker, Func fn) : Fn(fn), Checker(checker) {}
+ CheckerFn(CheckerBackend *checker, Func fn) : Fn(fn), Checker(checker) {}
----------------
NagyDonat wrote:
I agree that these changes are unforunate, but after this commit we still have 48 references to `CheckerBase` (although ~10 of them refers to `CheckerBase.td`) compared to 12 references to `CheckerBackend` and 26 references to `CheckerFrontend`. Many checker source files use `CheckerBase *` to store a pointer to "their" checker object and they often use the full `CheckerBase` interface (both `getName` and `ProgramPointTag` stuff) through those pointers, so I think the current solution which keeps `CheckerBase` = backend + frontend and introduces separate classes _in the engine_ is still the least disruptive one.
https://github.com/llvm/llvm-project/pull/139256
More information about the cfe-commits
mailing list