diff options
Diffstat (limited to 'lib/ARCMigrate/TransBlockObjCVariable.cpp')
-rw-r--r-- | lib/ARCMigrate/TransBlockObjCVariable.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/ARCMigrate/TransBlockObjCVariable.cpp b/lib/ARCMigrate/TransBlockObjCVariable.cpp index 97695cbccf..0e342b7a8f 100644 --- a/lib/ARCMigrate/TransBlockObjCVariable.cpp +++ b/lib/ARCMigrate/TransBlockObjCVariable.cpp @@ -98,12 +98,12 @@ public: BlocksAttr *attr = var->getAttr<BlocksAttr>(); if(!attr) continue; - bool hasWeak = Pass.Ctx.getLangOptions().ObjCRuntimeHasWeak; + bool useWeak = canApplyWeak(Pass.Ctx, var->getType()); SourceManager &SM = Pass.Ctx.getSourceManager(); Transaction Trans(Pass.TA); Pass.TA.replaceText(SM.getInstantiationLoc(attr->getLocation()), "__block", - hasWeak ? "__weak" : "__unsafe_unretained"); + useWeak ? "__weak" : "__unsafe_unretained"); } } |