arphaman added inline comments.

================
Comment at: include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h:69
+  template <typename T, typename U, typename R, typename... P>
+  struct has_same_member_pointer_type<R (T::*)(P...), R (U::*)(P...)>
+      : std::true_type {};
----------------
Why exactly is this template struct needed?


================
Comment at: include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h:75
 
+  Derived &getDerived() { return *static_cast<Derived *>(this); }
+
----------------
I don't think you need this since `getDerived` in RecursiveASTVisitor is 
already public.


================
Comment at: include/clang/AST/RecursiveASTVisitor.h:3212
 #undef TRAVERSE_STMT
-#undef TRAVERSE_STMT_BASE
 
----------------
Getting rid of `undef` is not ideal. You might want to extract these macros 
into one .def file that's included by both RecursiveASTVisitor.h and the 
LexicallyOrdered one.


https://reviews.llvm.org/D37200



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to