Use memoization for has()-matcher.
authorDaniel Jasper <djasper@google.com>
Thu, 25 Jul 2013 09:32:14 +0000 (09:32 +0000)
committerDaniel Jasper <djasper@google.com>
Thu, 25 Jul 2013 09:32:14 +0000 (09:32 +0000)
commitabe2a36b7eeac46d1b9c0aabf616e68125dd329d
treee67904e9b7f761b89029beae1aa9e901d554530f
parent5b463ceaf5fc07201a866dc0cabf584b755f5804
Use memoization for has()-matcher.

In TUs with large classes, a matcher like

  methodDecl(ofClass(recordDecl(has(varDecl()))))

(finding all member functions of classes with static variables)
becomes unbearably slow otherwise.

llvm-svn: 187115
clang/lib/ASTMatchers/ASTMatchFinder.cpp