diff options
author | Daniel Dunbar <daniel@zuster.org> | 2012-03-06 23:52:46 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2012-03-06 23:52:46 +0000 |
commit | 082c62d943ed95ec89aaafb2939c0aba981e1983 (patch) | |
tree | 128bb1ebab85d1dc223a1ed8bbde6f916fbf23ed /clang/lib/AST/Decl.cpp | |
parent | 304314d7399174c60e937b1645d16de3cd63190e (diff) | |
download | bcm5719-llvm-082c62d943ed95ec89aaafb2939c0aba981e1983.tar.gz bcm5719-llvm-082c62d943ed95ec89aaafb2939c0aba981e1983.zip |
[AST] VarDecl::hasDefinition() - Early exit if we find a strong definition.
llvm-svn: 152166
Diffstat (limited to 'clang/lib/AST/Decl.cpp')
-rw-r--r-- | clang/lib/AST/Decl.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp index 1942e1e8529..d5e048a7c4a 100644 --- a/clang/lib/AST/Decl.cpp +++ b/clang/lib/AST/Decl.cpp @@ -1313,8 +1313,11 @@ VarDecl::DefinitionKind VarDecl::hasDefinition() const { const VarDecl *First = getFirstDeclaration(); for (redecl_iterator I = First->redecls_begin(), E = First->redecls_end(); - I != E; ++I) + I != E; ++I) { Kind = std::max(Kind, (*I)->isThisDeclarationADefinition()); + if (Kind == Definition) + break; + } return Kind; } |