pull protocol resolution out into ActOnStartProtocolInterface.
This temporarily duplicates ParseObjCProtocolReferences, but it
will be removed in the future.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54092 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Parse/ParseDecl.cpp b/lib/Parse/ParseDecl.cpp
index e047d60..f66bb99 100644
--- a/lib/Parse/ParseDecl.cpp
+++ b/lib/Parse/ParseDecl.cpp
@@ -431,13 +431,8 @@
         continue;
       
       SourceLocation EndProtoLoc;
-      llvm::SmallVector<IdentifierLocPair, 8> ProtocolRefs;
-      ParseObjCProtocolReferences(ProtocolRefs, EndProtoLoc);
-      
       llvm::SmallVector<DeclTy *, 8> ProtocolDecl;
-      Actions.FindProtocolDeclaration(Loc, false,
-                                      &ProtocolRefs[0], ProtocolRefs.size(),
-                                      ProtocolDecl);
+      ParseObjCProtocolReferences(ProtocolDecl, false, EndProtoLoc);
       DS.setProtocolQualifiers(&ProtocolDecl[0], ProtocolDecl.size());
       
       DS.SetRangeEnd(EndProtoLoc);
@@ -572,12 +567,8 @@
         
       {
         SourceLocation EndProtoLoc;
-        llvm::SmallVector<IdentifierLocPair, 8> ProtocolRefs;
-        ParseObjCProtocolReferences(ProtocolRefs, EndProtoLoc);
         llvm::SmallVector<DeclTy *, 8> ProtocolDecl;
-        Actions.FindProtocolDeclaration(Loc, false,
-                                        &ProtocolRefs[0], ProtocolRefs.size(),
-                                        ProtocolDecl);
+        ParseObjCProtocolReferences(ProtocolDecl, false, EndProtoLoc);
         DS.setProtocolQualifiers(&ProtocolDecl[0], ProtocolDecl.size());
         DS.SetRangeEnd(EndProtoLoc);