summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2012-07-02 19:28:04 +0000
committerJordan Rose <jordan_rose@apple.com>2012-07-02 19:28:04 +0000
commit547060b30b4bc90ea84266138fed383abe7634c8 (patch)
tree063ca5c87de670329d14ffb34df8b19c8be500ea /clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
parent6bad4905d73ef9634e23709ba79747e83b27881c (diff)
downloadbcm5719-llvm-547060b30b4bc90ea84266138fed383abe7634c8.tar.gz
bcm5719-llvm-547060b30b4bc90ea84266138fed383abe7634c8.zip
[analyzer] Finish replacing ObjCMessage with ObjCMethodDecl and friends.
The preObjCMessage and postObjCMessage callbacks now take an ObjCMethodCall argument, which can represent an explicit message send (ObjCMessageSend) or an implicit message generated by a property access (ObjCPropertyAccess). llvm-svn: 159559
Diffstat (limited to 'clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp')
-rw-r--r--clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp14
1 files changed, 4 insertions, 10 deletions
diff --git a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
index 12b74e7e29c..80ebaa2e695 100644
--- a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
@@ -27,7 +27,6 @@
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h"
-#include "clang/StaticAnalyzer/Core/PathSensitive/ObjCMessage.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/ImmutableList.h"
@@ -2530,7 +2529,7 @@ public:
void checkPostStmt(const ObjCDictionaryLiteral *DL, CheckerContext &C) const;
void checkPostStmt(const ObjCBoxedExpr *BE, CheckerContext &C) const;
- void checkPostObjCMessage(const ObjCMessage &Msg, CheckerContext &C) const;
+ void checkPostObjCMessage(const ObjCMethodCall &Msg, CheckerContext &C) const;
void checkSummary(const RetainSummary &Summ, const CallEvent &Call,
CheckerContext &C) const;
@@ -2792,17 +2791,12 @@ void RetainCountChecker::checkPostStmt(const ObjCBoxedExpr *Ex,
C.addTransition(State);
}
-void RetainCountChecker::checkPostObjCMessage(const ObjCMessage &Msg,
+void RetainCountChecker::checkPostObjCMessage(const ObjCMethodCall &Msg,
CheckerContext &C) const {
- ProgramStateRef state = C.getState();
- const LocationContext *LC = C.getLocationContext();
- // FIXME: ObjCMessage is going away.
- ObjCMessageSend Call(Msg.getMessageExpr(), state, LC);
-
RetainSummaryManager &Summaries = getSummaryManager(C);
- const RetainSummary *Summ = Summaries.getSummary(Call, state);
+ const RetainSummary *Summ = Summaries.getSummary(Msg, C.getState());
- checkSummary(*Summ, Call, C);
+ checkSummary(*Summ, Msg, C);
}
/// GetReturnType - Used to get the return type of a message expression or
OpenPOWER on IntegriCloud