summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExprObjC.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2011-04-23 17:27:19 +0000
committerFariborz Jahanian <fjahanian@apple.com>2011-04-23 17:27:19 +0000
commitdbbdd2fe50e05c3f0da240b774e4d267e3c980cf (patch)
tree4e9f7fc92bcf59a4db9e5436868689ba3b313cde /clang/lib/Sema/SemaExprObjC.cpp
parenta7d337d19604644326843a516a05e9984e13af01 (diff)
downloadbcm5719-llvm-dbbdd2fe50e05c3f0da240b774e4d267e3c980cf.tar.gz
bcm5719-llvm-dbbdd2fe50e05c3f0da240b774e4d267e3c980cf.zip
"note" location of forward class used as receiver of
a 'deprecated' selector in the diagnostics for the selector. // rdar://9309223 llvm-svn: 130062
Diffstat (limited to 'clang/lib/Sema/SemaExprObjC.cpp')
-rw-r--r--clang/lib/Sema/SemaExprObjC.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp
index 04f5e32bda7..2a262f09392 100644
--- a/clang/lib/Sema/SemaExprObjC.cpp
+++ b/clang/lib/Sema/SemaExprObjC.cpp
@@ -1155,7 +1155,7 @@ ExprResult Sema::BuildInstanceMessage(Expr *Receiver,
// Search protocol qualifiers.
Method = LookupMethodInQualifiedType(Sel, OCIType, true);
- bool forwardClass = false;
+ const ObjCInterfaceDecl *forwardClass = 0;
if (!Method) {
// If we have implementations in scope, check "private" methods.
Method = LookupPrivateInstanceMethod(Sel, ClassDecl);
@@ -1167,7 +1167,8 @@ ExprResult Sema::BuildInstanceMessage(Expr *Receiver,
if (OCIType->qual_empty()) {
Method = LookupInstanceMethodInGlobalPool(Sel,
SourceRange(LBracLoc, RBracLoc));
- forwardClass = OCIType->getInterfaceDecl()->isForwardDecl();
+ if (OCIType->getInterfaceDecl()->isForwardDecl())
+ forwardClass = OCIType->getInterfaceDecl();
if (Method && !forwardClass)
Diag(Loc, diag::warn_maynot_respond)
<< OCIType->getInterfaceDecl()->getIdentifier() << Sel;
OpenPOWER on IntegriCloud