diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2009-02-17 20:21:51 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2009-02-17 20:21:51 +0000 |
commit | 7fd46dac4ab51de4d224f6bc7ce197913220a70c (patch) | |
tree | 2cd31f2aedf5c897e2a2aadb9ae0839101e6ecfc /lib/Sema/IdentifierResolver.cpp | |
parent | 0c00aac5d618f39afc406c5b2e07642930af1d56 (diff) |
Now that ObjC decls have DeclContexts too, remove an ugly hack from IdentifierResolver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64802 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/IdentifierResolver.cpp')
-rw-r--r-- | lib/Sema/IdentifierResolver.cpp | 35 |
1 files changed, 1 insertions, 34 deletions
diff --git a/lib/Sema/IdentifierResolver.cpp b/lib/Sema/IdentifierResolver.cpp index 781d89a0e9..6efedb4895 100644 --- a/lib/Sema/IdentifierResolver.cpp +++ b/lib/Sema/IdentifierResolver.cpp @@ -43,39 +43,6 @@ public: //===----------------------------------------------------------------------===// -// LookupContext Implementation -//===----------------------------------------------------------------------===// - -/// getContext - Returns translation unit context for non Decls and -/// for EnumConstantDecls returns the parent context of their EnumDecl. -DeclContext *IdentifierResolver::LookupContext::getContext(Decl *D) { - DeclContext *Ctx = D->getDeclContext(); - - if (!Ctx) // FIXME: HACK! We shouldn't end up with a NULL context here. - return TUCtx(); - - Ctx = Ctx->getLookupContext(); - - if (isa<TranslationUnitDecl>(Ctx)) - return TUCtx(); - - return Ctx; -} - -/// isEqOrContainedBy - Returns true of the given context is the same or a -/// parent of this one. -bool IdentifierResolver::LookupContext::isEqOrContainedBy( - const LookupContext &PC) const { - if (PC.isTU()) return true; - - for (LookupContext Next = *this; !Next.isTU(); Next = Next.getParent()) - if (Next.Ctx == PC.Ctx) return true; - - return false; -} - - -//===----------------------------------------------------------------------===// // IdDeclInfo Implementation //===----------------------------------------------------------------------===// @@ -155,7 +122,7 @@ bool IdentifierResolver::isDeclInScope(Decl *D, DeclContext *Ctx, return false; } - return LookupContext(D) == LookupContext(Ctx->getPrimaryContext()); + return D->getDeclContext()->getLookupContext() == Ctx->getPrimaryContext(); } /// AddDecl - Link the decl to its shadowed decl chain. |