rsmith added inline comments. ================ Comment at: include/clang/AST/RecursiveASTVisitor.h:630-635 @@ -593,1 +629,8 @@ + if (getDerived().shouldTraversePostOrder()) { + for (auto Iter = ReverseLocalQueue.rbegin(); + Iter != ReverseLocalQueue.rend(); ++Iter) { + TRY_TO(PostVisitStmt(*Iter)); + } + } + ---------------- Does this really give a postorder traversal rather than some kind of postorder / reverse preorder hybrid (based on whether we use data recursion or regular recursion for different parts of the graph)?
I would expect the right way to handle this would be to call `PostVisitStmt` from the `if (Visited)` branch above, where we call `dataTraverseStmtPost`. http://reviews.llvm.org/D20382 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits