From 214567ccfae6eb60b1ade4219d961fa50a840ed5 Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Tue, 28 Oct 2014 17:26:21 +0000 Subject: [Objective-C]. revert r220740,r220727 llvm-svn: 220802 --- clang/lib/Sema/SemaExprObjC.cpp | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) (limited to 'clang/lib/Sema/SemaExprObjC.cpp') diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp index 5746e732943..40ab95b6ec5 100644 --- a/clang/lib/Sema/SemaExprObjC.cpp +++ b/clang/lib/Sema/SemaExprObjC.cpp @@ -4075,22 +4075,11 @@ ExprResult Sema::BuildObjCBridgedCast(SourceLocation LParenLoc, // Okay: id -> CF CK = CK_BitCast; switch (Kind) { - case OBC_Bridge: { - const ImplicitCastExpr *implCE = dyn_cast(SubExpr); - while (implCE && implCE->getCastKind() == CK_BitCast) - implCE = dyn_cast(implCE->getSubExpr()); - if (implCE && (implCE->getCastKind() == CK_ARCConsumeObject)) - if (const Expr *LitExp = implCE->getSubExpr()) - if ((isa(LitExp) || - isa(LitExp)) && - T->isCARCBridgableType()) - Diag(BridgeKeywordLoc, diag::warn_arc_consumed_object_released) - << T << implCE->getType(); - // Reclaiming a value that's going to be __bridge-casted to CF - // is very dangerous, so we don't do it. - SubExpr = maybeUndoReclaimObject(SubExpr); - break; - } + case OBC_Bridge: + // Reclaiming a value that's going to be __bridge-casted to CF + // is very dangerous, so we don't do it. + SubExpr = maybeUndoReclaimObject(SubExpr); + break; case OBC_BridgeRetained: // Produce the object before casting it. -- cgit v1.2.3