diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-07-27 05:28:22 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-07-27 05:28:22 +0000 |
commit | 6fa8f86b8188c6d3c4d6616122a71ccd72a0c78a (patch) | |
tree | 5b322134b0d2e6ddd18fd311ee84d6598fefd4a5 /lib/ARCMigrate/TransAPIUses.cpp | |
parent | 18fd0c6915b45c4daafe18e3cd324c13306f913f (diff) |
[arcmt] Revert r135382, there's a different approach in r135764. rdar://9821111.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136209 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ARCMigrate/TransAPIUses.cpp')
-rw-r--r-- | lib/ARCMigrate/TransAPIUses.cpp | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/lib/ARCMigrate/TransAPIUses.cpp b/lib/ARCMigrate/TransAPIUses.cpp index 781ad7742d..aaa82d8dfb 100644 --- a/lib/ARCMigrate/TransAPIUses.cpp +++ b/lib/ARCMigrate/TransAPIUses.cpp @@ -13,8 +13,6 @@ // // - NSInvocation's [get/set]ReturnValue and [get/set]Argument are only safe // with __unsafe_unretained objects. -// - When a NSData's 'bytes' family of methods are used on a local var, -// add __attribute__((objc_precise_lifetime)) to make it safer. // - Calling -zone gets replaced with 'nil'. // //===----------------------------------------------------------------------===// @@ -35,11 +33,7 @@ class APIChecker : public RecursiveASTVisitor<APIChecker> { Selector getReturnValueSel, setReturnValueSel; Selector getArgumentSel, setArgumentSel; - Selector bytesSel, getBytesSel, getBytesLengthSel, getBytesRangeSel; - Selector zoneSel; - - llvm::DenseSet<VarDecl *> ChangedNSDataVars; public: APIChecker(MigrationPass &pass) : Pass(pass) { SelectorTable &sels = Pass.Ctx.Selectors; @@ -54,14 +48,6 @@ public: selIds[0] = &ids.get("setArgument"); setArgumentSel = sels.getSelector(2, selIds); - bytesSel = sels.getNullarySelector(&ids.get("bytes")); - getBytesSel = sels.getUnarySelector(&ids.get("getBytes")); - selIds[0] = &ids.get("getBytes"); - selIds[1] = &ids.get("length"); - getBytesLengthSel = sels.getSelector(2, selIds); - selIds[1] = &ids.get("range"); - getBytesRangeSel = sels.getSelector(2, selIds); - zoneSel = sels.getNullarySelector(&ids.get("zone")); } @@ -98,27 +84,6 @@ public: return true; } - // NSData. - if (E->isInstanceMessage() && - E->getReceiverInterface() && - E->getReceiverInterface()->getName() == "NSData" && - E->getInstanceReceiver() && - (E->getSelector() == bytesSel || - E->getSelector() == getBytesSel || - E->getSelector() == getBytesLengthSel || - E->getSelector() == getBytesRangeSel)) { - Expr *rec = E->getInstanceReceiver(); - rec = rec->IgnoreParenCasts(); - if (DeclRefExpr *DRE = dyn_cast<DeclRefExpr>(rec)) - if (VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) - if (VD->hasLocalStorage() && !ChangedNSDataVars.count(VD)) { - Transaction Trans(Pass.TA); - Pass.TA.insertAfterToken(VD->getLocation(), - " __attribute__((objc_precise_lifetime))"); - ChangedNSDataVars.insert(VD); - } - } - // -zone. if (E->isInstanceMessage() && E->getInstanceReceiver() && |