Patch to remove ObjcProtoMethodDecl and use ObjcMethodDecl
instead for @protocol method decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42070 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Parse/ParseObjc.cpp b/Parse/ParseObjc.cpp
index c2cf61d..c4a785e 100644
--- a/Parse/ParseObjc.cpp
+++ b/Parse/ParseObjc.cpp
@@ -375,7 +375,7 @@
tok::TokenKind methodType = Tok.getKind();
SourceLocation methodLoc = ConsumeToken();
- DeclTy *MDecl = ParseObjCMethodDecl(IDecl, pi, methodType, methodLoc);
+ DeclTy *MDecl = ParseObjCMethodDecl(pi, methodType, methodLoc);
// Since this rule is used for both method declarations and definitions,
// the caller is (optionally) responsible for consuming the ';'.
return MDecl;
@@ -484,8 +484,7 @@
/// objc-keyword-attributes: [OBJC2]
/// __attribute__((unused))
///
-Parser::DeclTy *Parser::ParseObjCMethodDecl(DeclTy *IDecl,
- tok::ObjCKeywordKind& pi,
+Parser::DeclTy *Parser::ParseObjCMethodDecl(tok::ObjCKeywordKind& pi,
tok::TokenKind mType, SourceLocation mLoc) {
TypeTy *ReturnType = 0;
@@ -552,7 +551,7 @@
// If attributes exist after the method, parse them.
if (getLang().ObjC2 && Tok.getKind() == tok::kw___attribute)
methodAttrs = ParseAttributes();
- return Actions.ObjcBuildMethodDeclaration(IDecl, pi, mLoc, mType,
+ return Actions.ObjcBuildMethodDeclaration(pi, mLoc, mType,
ReturnType,
&KeyInfo[0], KeyInfo.size(),
methodAttrs);
@@ -563,7 +562,7 @@
if (getLang().ObjC2 && Tok.getKind() == tok::kw___attribute)
methodAttrs = ParseAttributes();
- return Actions.ObjcBuildMethodDeclaration(IDecl, pi,
+ return Actions.ObjcBuildMethodDeclaration(pi,
mLoc, mType, ReturnType,
selIdent, methodAttrs);
}