Move property API's up to ObjCContainerDecl (removing a lot of duplicate code).
Add isa/cast/dyncast support for ObjCContainerDecl.
Renamed classprop_iterator/begin/end to prop_iterator/begin/end (the class prefix was confusing).
More simplifications to Sema::ActOnAtEnd()...
Added/changed some FIXME's as a result of the above work.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61988 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/ASTConsumers.cpp b/Driver/ASTConsumers.cpp
index 6836d0c..12929e8 100644
--- a/Driver/ASTConsumers.cpp
+++ b/Driver/ASTConsumers.cpp
@@ -306,8 +306,8 @@
Out << "}\n";
}
- for (ObjCInterfaceDecl::classprop_iterator I = OID->classprop_begin(),
- E = OID->classprop_end(); I != E; ++I)
+ for (ObjCInterfaceDecl::prop_iterator I = OID->prop_begin(),
+ E = OID->prop_end(); I != E; ++I)
PrintObjCPropertyDecl(*I);
bool eol_needed = false;
for (ObjCInterfaceDecl::classmeth_iterator I = OID->classmeth_begin(),
@@ -325,8 +325,8 @@
void DeclPrinter::PrintObjCProtocolDecl(ObjCProtocolDecl *PID) {
Out << "@protocol " << PID->getNameAsString() << '\n';
- for (ObjCProtocolDecl::classprop_iterator I = PID->classprop_begin(),
- E = PID->classprop_end(); I != E; ++I)
+ for (ObjCProtocolDecl::prop_iterator I = PID->prop_begin(),
+ E = PID->prop_end(); I != E; ++I)
PrintObjCPropertyDecl(*I);
Out << "@end\n";
// FIXME: implement the rest...
@@ -348,8 +348,8 @@
<< PID->getClassInterface()->getNameAsString()
<< '(' << PID->getNameAsString() << ");\n";
// Output property declarations.
- for (ObjCCategoryDecl::classprop_iterator I = PID->classprop_begin(),
- E = PID->classprop_end(); I != E; ++I)
+ for (ObjCCategoryDecl::prop_iterator I = PID->prop_begin(),
+ E = PID->prop_end(); I != E; ++I)
PrintObjCPropertyDecl(*I);
Out << "@end\n";