summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2013-08-16 23:14:22 +0000
committerTed Kremenek <kremenek@apple.com>2013-08-16 23:14:22 +0000
commite19529b3d819415c64bbd543827dbf17ba2d016e (patch)
treeb03c4b339b9a25d2a794fbb3f68cea38fc9944a7 /clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
parent0eae85fb1f814e268e8c988a44da62724749b26b (diff)
downloadbcm5719-llvm-e19529b3d819415c64bbd543827dbf17ba2d016e.tar.gz
bcm5719-llvm-e19529b3d819415c64bbd543827dbf17ba2d016e.zip
Use the number of parameters in the actual method or function to determine the CallEffects size.
llvm-svn: 188587
Diffstat (limited to 'clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp')
-rw-r--r--clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
index be2f2205d13..a6ddf1dfbbc 100644
--- a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
@@ -318,12 +318,6 @@ public:
return DefaultArgEffect;
}
- /// Return the number of argument effects. This is O(n) in the number
- /// of arguments.
- unsigned getNumArgs() const {
- return std::distance(Args.begin(), Args.end());
- }
-
void addArg(ArgEffects::Factory &af, unsigned idx, ArgEffect e) {
Args = af.add(Args, idx, e);
}
@@ -3689,7 +3683,7 @@ namespace clang { namespace ento { namespace objc_retain {
const RetainSummary *S = M.get ## KIND ## Summary(D);\
CallEffects CE(S->getRetEffect());\
CE.Receiver = S->getReceiverEffect();\
- unsigned N = S->getNumArgs();\
+ unsigned N = D->param_size();\
for (unsigned i = 0; i < N; ++i) {\
CE.Args.push_back(S->getArg(i));\
}
OpenPOWER on IntegriCloud