HighCommander4 wrote: I don't really have enough experience with the AST matcher implementations to provide an authoritative review of this, sorry.
I did do some digging in the code history, and found that `TypeLocTypeMatcher` did store a `Matcher<QualType>` in the past. That was changed in https://github.com/llvm/llvm-project/commit/70f19df90d0f8b69f0516290f75e90ef94d6d57d, whose description reads: > [ASTMatchers] Factor wrapping matcher classes into a common base class. > > The deduplication here is negligible, but it allows the compiler to > skip emission of many templated base class destructors. Shrinks > clang-query by 53k. No functionality change intended. The base class has a `DynTypeMatcher` member; this was further refactored in https://github.com/llvm/llvm-project/commit/35492270ed705ea9ac98ba04c6fda1adafef613a to move the `DynTypeMatcher` member directly into the derived class. It's not clear to me whether this change would regress the code size improvement brought by the first change. https://github.com/llvm/llvm-project/pull/123450 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits