summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2008-09-09 21:32:02 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2008-09-09 21:32:02 +0000
commitf4b92e6924bc5b3f092bce3ac67b4501e2ac37cc (patch)
treebe5284333c6ef52111db73af796b0a82c876e017
parent5b144d5cc4c56c8503b1e2d81c58e969e415a937 (diff)
downloadbcm5719-llvm-f4b92e6924bc5b3f092bce3ac67b4501e2ac37cc.tar.gz
bcm5719-llvm-f4b92e6924bc5b3f092bce3ac67b4501e2ac37cc.zip
Add a LangOptions member to IdentifierResolver.
Make Sema pass the LangOptions to IdentifierResolver's constructor. llvm-svn: 56015
-rw-r--r--clang/lib/Sema/IdentifierResolver.cpp4
-rw-r--r--clang/lib/Sema/IdentifierResolver.h4
-rw-r--r--clang/lib/Sema/Sema.cpp3
3 files changed, 8 insertions, 3 deletions
diff --git a/clang/lib/Sema/IdentifierResolver.cpp b/clang/lib/Sema/IdentifierResolver.cpp
index 79432954e5e..8c0c4d69326 100644
--- a/clang/lib/Sema/IdentifierResolver.cpp
+++ b/clang/lib/Sema/IdentifierResolver.cpp
@@ -134,7 +134,9 @@ void IdentifierResolver::IdDeclInfo::RemoveDecl(NamedDecl *D) {
// IdentifierResolver Implementation
//===----------------------------------------------------------------------===//
-IdentifierResolver::IdentifierResolver() : IdDeclInfos(new IdDeclInfoMap) {}
+IdentifierResolver::IdentifierResolver(const LangOptions &langOpt)
+ : LangOpt(langOpt), IdDeclInfos(new IdDeclInfoMap) {
+}
IdentifierResolver::~IdentifierResolver() {
delete IdDeclInfos;
}
diff --git a/clang/lib/Sema/IdentifierResolver.h b/clang/lib/Sema/IdentifierResolver.h
index 4d2f0dd5caf..82c4f06196a 100644
--- a/clang/lib/Sema/IdentifierResolver.h
+++ b/clang/lib/Sema/IdentifierResolver.h
@@ -221,10 +221,12 @@ public:
/// The decl must already be part of the decl chain.
void RemoveDecl(NamedDecl *D);
- IdentifierResolver();
+ explicit IdentifierResolver(const LangOptions &LangOpt);
~IdentifierResolver();
private:
+ const LangOptions &LangOpt;
+
class IdDeclInfoMap;
IdDeclInfoMap *IdDeclInfos;
diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp
index 2b8127b153b..f43264d133d 100644
--- a/clang/lib/Sema/Sema.cpp
+++ b/clang/lib/Sema/Sema.cpp
@@ -81,7 +81,8 @@ void Sema::ActOnTranslationUnitScope(SourceLocation Loc, Scope *S) {
}
Sema::Sema(Preprocessor &pp, ASTContext &ctxt, ASTConsumer &consumer)
- : PP(pp), Context(ctxt), Consumer(consumer), CurContext(0), CurBlock(0) {
+ : PP(pp), Context(ctxt), Consumer(consumer), CurContext(0), CurBlock(0),
+ IdResolver(pp.getLangOptions()) {
// Get IdentifierInfo objects for known functions for which we
// do extra checking.
OpenPOWER on IntegriCloud