Pretty printing for ivar list of an interface block.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43382 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/ASTConsumers.cpp b/Driver/ASTConsumers.cpp
index 98a0bfe..37d637b 100644
--- a/Driver/ASTConsumers.cpp
+++ b/Driver/ASTConsumers.cpp
@@ -91,9 +91,22 @@
               refProtocols[i]->getName());
   }
   if (count > 0)
-    fprintf(stderr, ">;\n");
+    fprintf(stderr, ">\n");
   else
-    fprintf(stderr, ";\n");
+    fprintf(stderr, "\n");
+  
+  int NumIvars = OID->getIntfDeclNumIvars();
+  if (NumIvars > 0) {
+    ObjcIvarDecl **Ivars = OID->getIntfDeclIvars();
+    fprintf(stderr,"{");
+    for (int i = 0; i < NumIvars; i++) {
+      fprintf(stderr, "\t%s %s;\n", Ivars[i]->getType().getAsString().c_str(),
+              Ivars[i]->getName());
+    }
+    fprintf(stderr, "}\n@end\n");
+  }
+  else
+    fprintf(stderr,"@end\n");
   // FIXME: implement the rest...
 }