diff options
author | dim <dim@FreeBSD.org> | 2014-11-24 18:11:16 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2014-11-24 18:11:16 +0000 |
commit | 6148c19c738a92f344008aa3f88f4e008bada0ee (patch) | |
tree | d4426858455f04d0d8c25a2f9eb9ea5582ffe1b6 /contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp | |
parent | 2c8643c6396b0a3db33430cf9380e70bbb9efce0 (diff) | |
parent | 173a4f43a911175643bda81ee675e8d9269056ea (diff) | |
download | FreeBSD-src-6148c19c738a92f344008aa3f88f4e008bada0ee.zip FreeBSD-src-6148c19c738a92f344008aa3f88f4e008bada0ee.tar.gz |
Merge clang 3.5.0 release from ^/vendor/clang/dist, resolve conflicts,
and preserve our customizations, where necessary.
Diffstat (limited to 'contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp')
-rw-r--r-- | contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp b/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp index a0994a6..544cb0a 100644 --- a/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp +++ b/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp @@ -66,8 +66,7 @@ public: selName = "getArgument"; else if (E->getSelector() == setArgumentSel) selName = "setArgument"; - - if (selName.empty()) + else return true; Expr *parm = E->getArg(0)->IgnoreParenCasts(); @@ -75,13 +74,12 @@ public: if (pointee.isNull()) return true; - if (pointee.getObjCLifetime() > Qualifiers::OCL_ExplicitNone) { - std::string err = "NSInvocation's "; - err += selName; - err += " is not safe to be used with an object with ownership other " - "than __unsafe_unretained"; - Pass.TA.reportError(err, parm->getLocStart(), parm->getSourceRange()); - } + if (pointee.getObjCLifetime() > Qualifiers::OCL_ExplicitNone) + Pass.TA.report(parm->getLocStart(), + diag::err_arcmt_nsinvocation_ownership, + parm->getSourceRange()) + << selName; + return true; } |