From 676fbe8105eeb6ff4bb2ed261cb212fcfdbe7b63 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 19 Jan 2019 10:04:05 +0000 Subject: Vendor import of clang trunk r351319 (just before the release_80 branch point): https://llvm.org/svn/llvm-project/cfe/trunk@351319 --- lib/ARCMigrate/TransRetainReleaseDealloc.cpp | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'lib/ARCMigrate/TransRetainReleaseDealloc.cpp') diff --git a/lib/ARCMigrate/TransRetainReleaseDealloc.cpp b/lib/ARCMigrate/TransRetainReleaseDealloc.cpp index c411044ecde3..d199bb936547 100644 --- a/lib/ARCMigrate/TransRetainReleaseDealloc.cpp +++ b/lib/ARCMigrate/TransRetainReleaseDealloc.cpp @@ -71,9 +71,10 @@ public: // will likely die immediately while previously it was kept alive // by the autorelease pool. This is bad practice in general, leave it // and emit an error to force the user to restructure their code. - Pass.TA.reportError("it is not safe to remove an unused 'autorelease' " + Pass.TA.reportError( + "it is not safe to remove an unused 'autorelease' " "message; its receiver may be destroyed immediately", - E->getLocStart(), E->getSourceRange()); + E->getBeginLoc(), E->getSourceRange()); return true; } } @@ -89,7 +90,7 @@ public: std::string err = "it is not safe to remove '"; err += E->getSelector().getAsString() + "' message on " "an __unsafe_unretained type"; - Pass.TA.reportError(err, rec->getLocStart()); + Pass.TA.reportError(err, rec->getBeginLoc()); return true; } @@ -98,18 +99,21 @@ public: std::string err = "it is not safe to remove '"; err += E->getSelector().getAsString() + "' message on " "a global variable"; - Pass.TA.reportError(err, rec->getLocStart()); + Pass.TA.reportError(err, rec->getBeginLoc()); return true; } if (E->getMethodFamily() == OMF_release && isDelegateMessage(rec)) { - Pass.TA.reportError("it is not safe to remove 'retain' " + Pass.TA.reportError( + "it is not safe to remove 'retain' " "message on the result of a 'delegate' message; " "the object that was passed to 'setDelegate:' may not be " - "properly retained", rec->getLocStart()); + "properly retained", + rec->getBeginLoc()); return true; } } + break; case OMF_dealloc: break; } @@ -250,7 +254,7 @@ private: } while (OuterS && (isa(OuterS) || isa(OuterS) || - isa(OuterS))); + isa(OuterS))); if (!OuterS) return std::make_pair(prevStmt, nextStmt); @@ -373,8 +377,8 @@ private: RecContainer = StmtE; Rec = Init->IgnoreParenImpCasts(); - if (ExprWithCleanups *EWC = dyn_cast(Rec)) - Rec = EWC->getSubExpr()->IgnoreParenImpCasts(); + if (FullExpr *FE = dyn_cast(Rec)) + Rec = FE->getSubExpr()->IgnoreParenImpCasts(); RecRange = Rec->getSourceRange(); if (SM.isMacroArgExpansion(RecRange.getBegin())) RecRange.setBegin(SM.getImmediateSpellingLoc(RecRange.getBegin())); -- cgit v1.3