diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2017-10-10 07:21:34 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2017-10-10 07:21:34 +0000 |
commit | db4818ec01f2c7ab001b808e03d66e5ac0af7872 (patch) | |
tree | 9c650318faf2bb76c76619e3017531a6d0b20bd4 /clang/lib/ASTMatchers/ASTMatchFinder.cpp | |
parent | 8cc99f1887df7035e677940bba48063858360f2d (diff) | |
download | bcm5719-llvm-db4818ec01f2c7ab001b808e03d66e5ac0af7872.tar.gz bcm5719-llvm-db4818ec01f2c7ab001b808e03d66e5ac0af7872.zip |
[ASTMatchers] Don't create a copy of a std::set when iterating over it.
This is a bit awkward because lookup returns a copy instead of a
reference. No functionality change intended.
llvm-svn: 315276
Diffstat (limited to 'clang/lib/ASTMatchers/ASTMatchFinder.cpp')
-rw-r--r-- | clang/lib/ASTMatchers/ASTMatchFinder.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/ASTMatchers/ASTMatchFinder.cpp b/clang/lib/ASTMatchers/ASTMatchFinder.cpp index 49b15ee6850..02aee4b46dd 100644 --- a/clang/lib/ASTMatchers/ASTMatchFinder.cpp +++ b/clang/lib/ASTMatchers/ASTMatchFinder.cpp @@ -734,7 +734,10 @@ private: BoundNodesTreeBuilder *Builder) { const Type *const CanonicalType = ActiveASTContext->getCanonicalType(TypeNode); - for (const TypedefNameDecl *Alias : TypeAliases.lookup(CanonicalType)) { + auto Aliases = TypeAliases.find(CanonicalType); + if (Aliases == TypeAliases.end()) + return false; + for (const TypedefNameDecl *Alias : Aliases->second) { BoundNodesTreeBuilder Result(*Builder); if (Matcher.matches(*Alias, this, &Result)) { *Builder = std::move(Result); |