================
Comment at: lib/ASTMatchers/ASTMatchFinder.cpp:425
@@ -423,3 +424,3 @@
 private:
-  bool matchesAncestorOfRecursively(
+  bool memoizedMatchesAncestorOfRecursively(
       const ast_type_traits::DynTypedNode &Node, const DynTypedMatcher 
&Matcher,
----------------
I think the combination of these two methods is highly confusing. The name 
suggests that both do the same thing, just one with memoization and one without 
memoization, which they don't. Furthermore, the responsibilities are not clear 
at all. E.g. what happens if I call matchesAncestorOfRecursively() with the 
TUDecl? It will probably assert, as the check for that is only in 
memoizedMatchesAncestorOfRecursively()..

Also, it seems a bit strange, to first match all direct parents (kind of BFS) 
and then recursively call matchesAncestorOfRecursively() on each one (kind of 
DFS). Is this intended?


http://llvm-reviews.chandlerc.com/D510
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to