pretty priting for method definitions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43986 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Parse/ParseObjc.cpp b/Parse/ParseObjc.cpp
index b5f7429..4fbbc18 100644
--- a/Parse/ParseObjc.cpp
+++ b/Parse/ParseObjc.cpp
@@ -38,7 +38,7 @@
     case tok::objc_protocol:
       return ParseObjCAtProtocolDeclaration(AtLoc);
     case tok::objc_implementation:
-      return ObjcImpDecl = ParseObjCAtImplementationDeclaration(AtLoc);
+      return ParseObjCAtImplementationDeclaration(AtLoc);
     case tok::objc_end:
       return ParseObjCAtEndDeclaration(AtLoc);
     case tok::objc_compatibility_alias:
@@ -911,7 +911,8 @@
     DeclTy *ImplCatType = Actions.ActOnStartCategoryImplementation(
                                     atLoc, nameId, nameLoc, categoryId, 
                                     categoryLoc);
-    return ImplCatType;
+    ObjcImpDecl = ImplCatType;
+    return 0;
   }
   // We have a class implementation
   SourceLocation superClassLoc;
@@ -932,8 +933,9 @@
   
   if (Tok.is(tok::l_brace)) // we have ivars
     ParseObjCClassInstanceVariables(ImplClsType/*FIXME*/, atLoc);
+  ObjcImpDecl = ImplClsType;
   
-  return ImplClsType;
+  return 0;
 }
 
 Parser::DeclTy *Parser::ParseObjCAtEndDeclaration(SourceLocation atLoc) {
@@ -949,11 +951,10 @@
                                       &AllImplMethods[0], AllImplMethods.size(),
                                       (DeclTy **)0, 0,
                                       atLoc);
-    ObjcImpDecl = 0;
     AllImplMethods.clear();
   }
 
-  return 0;
+  return ObjcImpDecl;
 }
 
 ///   compatibility-alias-decl: