[PATCH] D54307: [clang] overload ignoringParens for Expr

Jonas Toth via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 9 11:17:02 PST 2018

JonasToth added inline comments.

Comment at: include/clang/ASTMatchers/ASTMatchers.h:814
 /// would match the declaration for fp.
-AST_MATCHER_P(QualType, ignoringParens,
-              internal::Matcher<QualType>, InnerMatcher) {
+AST_MATCHER_P_OVERLOAD(QualType, ignoringParens, internal::Matcher<QualType>,
+                       InnerMatcher, 0) {
aaron.ballman wrote:
> JonasToth wrote:
> > aaron.ballman wrote:
> > > Can you do this via `AST_POLYMORPHIC_MATCHER_P` instead, given that the implementation is the same?
> > Do you want me to add more types? e.g. `TypeLoc` has `IgnoreParens()`, too. 
> I'd not be opposed, given that we already expose the `typeLoc()` matcher. I'll leave that to your discretion.
as discussed on IRC making it an `AST_POLYMORPHIC_MATCHER_P` does not seem to work, as the polymorphism is only in the return type. We do need the `Node` itself to be polymorphic (same type as returntype). The only working version I got was using the overloads.

  rC Clang


More information about the cfe-commits mailing list