summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/RewriteObjC.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2009-12-18 01:15:21 +0000
committerFariborz Jahanian <fjahanian@apple.com>2009-12-18 01:15:21 +0000
commit6ab7ed40c7402eecaeadbb04d8ae42e0b9b64245 (patch)
treeaef5c3d5d66d32729de4718bcfc2ee8b7e54c78d /clang/lib/Frontend/RewriteObjC.cpp
parentcb0efecd33f60ce660a209094e9c08bc05dfc3df (diff)
downloadbcm5719-llvm-6ab7ed40c7402eecaeadbb04d8ae42e0b9b64245.tar.gz
bcm5719-llvm-6ab7ed40c7402eecaeadbb04d8ae42e0b9b64245.zip
Implemented rewriting of invocation of a block ivar.
(radar 7482224). llvm-svn: 91652
Diffstat (limited to 'clang/lib/Frontend/RewriteObjC.cpp')
-rw-r--r--clang/lib/Frontend/RewriteObjC.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Frontend/RewriteObjC.cpp b/clang/lib/Frontend/RewriteObjC.cpp
index 6f8d40f0d13..4ea081415fa 100644
--- a/clang/lib/Frontend/RewriteObjC.cpp
+++ b/clang/lib/Frontend/RewriteObjC.cpp
@@ -4060,6 +4060,8 @@ Stmt *RewriteObjC::SynthesizeBlockCall(CallExpr *Exp, const Expr *BlockExp) {
SourceLocation(), cast<Expr>(RHSStmt),
Exp->getType());
return CondExpr;
+ } else if (const ObjCIvarRefExpr *IRE = dyn_cast<ObjCIvarRefExpr>(BlockExp)) {
+ CPT = IRE->getType()->getAs<BlockPointerType>();
} else {
assert(1 && "RewriteBlockClass: Bad type");
}
OpenPOWER on IntegriCloud