[cfe-dev] TraverseExplicitCastExpr?

scott constable via cfe-dev cfe-dev at lists.llvm.org
Mon May 22 08:55:58 PDT 2017


Hi,

I'm writing a clang libtool using RecursiveASTVisitor, and I've noticed
that I can define Traverse* for some types, but not others. For instance, I
can define TraverseArraySubscriptExpr() and TraverseMemberExpr(), but not
TraverseExplicitCastExpr(). So I can write

bool MyVisitor::TraverseExplicitCastExpr(ExplicitCastExpr *ECE) {
  // do some stuff
  return RecursiveASTVisitor<MyVisitor>::TraverseExplicitCastExpr(ECE);
}

but then the compiler complains that there is no TraverseExplicitCastExpr
in the base class RecursiveASTVisitor<MyVisitor>. But if I do the same for
an ArraySubscriptExpr, it compiles just fine.

Any insight into this matter would be much appreciated.

Thanks,

Scott Constable
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20170522/2f7c2a85/attachment.html>


More information about the cfe-dev mailing list