Eliminate Sema::ObjCInterfaceDecls
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69942 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDeclObjC.cpp b/lib/Sema/SemaDeclObjC.cpp
index e0cbdce..029770d 100644
--- a/lib/Sema/SemaDeclObjC.cpp
+++ b/lib/Sema/SemaDeclObjC.cpp
@@ -98,10 +98,7 @@
if (AttrList)
ProcessDeclAttributeList(IDecl, AttrList);
- ObjCInterfaceDecls[ClassName] = IDecl;
PushOnScopeChains(IDecl, TUScope);
- // Remember that this needs to be removed when the scope is popped.
- TUScope->AddDecl(DeclPtrTy::make(IDecl));
}
if (SuperName) {
@@ -658,11 +655,10 @@
// we should copy them over.
IDecl = ObjCInterfaceDecl::Create(Context, CurContext, AtClassImplLoc,
ClassName, ClassLoc, false, true);
- ObjCInterfaceDecls[ClassName] = IDecl;
IDecl->setSuperClass(SDecl);
IDecl->setLocEnd(ClassLoc);
-
- // FIXME: PushOnScopeChains?
+
+ PushOnScopeChains(IDecl, TUScope);
CurContext->addDecl(Context, IDecl);
// Remember that this needs to be removed when the scope is popped.
TUScope->AddDecl(DeclPtrTy::make(IDecl));
@@ -1042,11 +1038,7 @@
if (!IDecl) { // Not already seen? Make a forward decl.
IDecl = ObjCInterfaceDecl::Create(Context, CurContext, AtClassLoc,
IdentList[i], SourceLocation(), true);
- ObjCInterfaceDecls[IdentList[i]] = IDecl;
-
PushOnScopeChains(IDecl, TUScope);
- // Remember that this needs to be removed when the scope is popped.
- TUScope->AddDecl(DeclPtrTy::make(IDecl));
}
Interfaces.push_back(IDecl);