diff options
author | Chris Lattner <sabre@nondot.org> | 2008-11-20 05:45:14 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-11-20 05:45:14 +0000 |
commit | 0e73b2c352ec6de56973fc84a5f82199d75b7df1 (patch) | |
tree | b5ec44615cf543032d62c22bf88b1cd2579af08c /clang/lib/Sema | |
parent | 66e32812cd3bc9439bd36752728e8eb56993c1ae (diff) | |
download | bcm5719-llvm-0e73b2c352ec6de56973fc84a5f82199d75b7df1.tar.gz bcm5719-llvm-0e73b2c352ec6de56973fc84a5f82199d75b7df1.zip |
compared to the rest of the code in Sema::GetStdNamespace(),
looking up the "std" identifier is trivial. Just do it, particularly
since this is only done if the namespace hasn't already been looked up.
llvm-svn: 59710
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r-- | clang/lib/Sema/Sema.cpp | 1 | ||||
-rw-r--r-- | clang/lib/Sema/Sema.h | 1 | ||||
-rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 3 |
3 files changed, 2 insertions, 3 deletions
diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp index 2b33bf4046f..e1eb86c98fa 100644 --- a/clang/lib/Sema/Sema.cpp +++ b/clang/lib/Sema/Sema.cpp @@ -103,7 +103,6 @@ Sema::Sema(Preprocessor &pp, ASTContext &ctxt, ASTConsumer &consumer) KnownFunctionIDs[id_vsnprintf_chk] = &IT.get("__builtin___vsnprintf_chk"); KnownFunctionIDs[id_vprintf] = &IT.get("vprintf"); - Ident_StdNs = &IT.get("std"); Ident_TypeInfo = 0; StdNamespace = 0; diff --git a/clang/lib/Sema/Sema.h b/clang/lib/Sema/Sema.h index ab465247c89..7840dec5e7c 100644 --- a/clang/lib/Sema/Sema.h +++ b/clang/lib/Sema/Sema.h @@ -193,7 +193,6 @@ public: IdentifierInfo* KnownFunctionIDs[id_num_known_functions]; /// Identifiers used by the C++ language - IdentifierInfo *Ident_StdNs; // "std" IdentifierInfo *Ident_TypeInfo; // "type_info" - lazily created /// Translation Unit Scope - useful to Objective-C actions that need diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index e7a9c0ee728..aa2154f0c65 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -278,8 +278,9 @@ ScopedDecl *Sema::LazilyCreateBuiltin(IdentifierInfo *II, unsigned bid, /// everything from the standard library is defined. NamespaceDecl *Sema::GetStdNamespace() { if (!StdNamespace) { + IdentifierInfo *StdIdent = &PP.getIdentifierTable().get("std"); DeclContext *Global = Context.getTranslationUnitDecl(); - Decl *Std = LookupDecl(Ident_StdNs, Decl::IDNS_Tag | Decl::IDNS_Ordinary, + Decl *Std = LookupDecl(StdIdent, Decl::IDNS_Tag | Decl::IDNS_Ordinary, 0, Global, /*enableLazyBuiltinCreation=*/false); StdNamespace = dyn_cast_or_null<NamespaceDecl>(Std); } |