Add a method prototype slot/getter to the ObjCMessageExpr AST.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43666 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/Expr.cpp b/AST/Expr.cpp
index 14ef48c..ffb34f5 100644
--- a/AST/Expr.cpp
+++ b/AST/Expr.cpp
@@ -871,9 +871,11 @@
// constructor for instance messages.
ObjCMessageExpr::ObjCMessageExpr(Expr *receiver, Selector selInfo,
- QualType retType, SourceLocation LBrac, SourceLocation RBrac,
+ QualType retType, ObjcMethodDecl *mproto,
+ SourceLocation LBrac, SourceLocation RBrac,
Expr **ArgExprs)
- : Expr(ObjCMessageExprClass, retType), SelName(selInfo), ClassName(0) {
+ : Expr(ObjCMessageExprClass, retType), SelName(selInfo),
+ MethodProto(mproto), ClassName(0) {
unsigned numArgs = selInfo.getNumArgs();
SubExprs = new Expr*[numArgs+1];
SubExprs[RECEIVER] = receiver;
@@ -888,9 +890,11 @@
// constructor for class messages.
// FIXME: clsName should be typed to ObjCInterfaceType
ObjCMessageExpr::ObjCMessageExpr(IdentifierInfo *clsName, Selector selInfo,
- QualType retType, SourceLocation LBrac, SourceLocation RBrac,
+ QualType retType, ObjcMethodDecl *mproto,
+ SourceLocation LBrac, SourceLocation RBrac,
Expr **ArgExprs)
- : Expr(ObjCMessageExprClass, retType), SelName(selInfo), ClassName(clsName) {
+ : Expr(ObjCMessageExprClass, retType), SelName(selInfo),
+ MethodProto(mproto), ClassName(clsName) {
unsigned numArgs = selInfo.getNumArgs();
SubExprs = new Expr*[numArgs+1];
SubExprs[RECEIVER] = 0;