summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/CFG.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-12-23 23:37:10 +0000
committerTed Kremenek <kremenek@apple.com>2009-12-23 23:37:10 +0000
commitbff984432768612049273832be67bb0fa5478b3f (patch)
treece68d1d084ae025382b2e18d007fd4c8ba438c70 /clang/lib/Analysis/CFG.cpp
parent1495b5f88756cbfe34171fd492d79c5759441b89 (diff)
downloadbcm5719-llvm-bff984432768612049273832be67bb0fa5478b3f.tar.gz
bcm5719-llvm-bff984432768612049273832be67bb0fa5478b3f.zip
Tidy up FindSubExprAssignments to not deference the child_iterator multiple times.
llvm-svn: 92087
Diffstat (limited to 'clang/lib/Analysis/CFG.cpp')
-rw-r--r--clang/lib/Analysis/CFG.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/clang/lib/Analysis/CFG.cpp b/clang/lib/Analysis/CFG.cpp
index 8f2a5719f68..023ac2b7e6e 100644
--- a/clang/lib/Analysis/CFG.cpp
+++ b/clang/lib/Analysis/CFG.cpp
@@ -1548,17 +1548,20 @@ namespace {
typedef llvm::DenseMap<const Stmt*,unsigned> BlkExprMapTy;
}
-static void FindSubExprAssignments(Stmt* Terminator, llvm::SmallPtrSet<Expr*,50>& Set) {
- if (!Terminator)
+static void FindSubExprAssignments(Stmt *S,
+ llvm::SmallPtrSet<Expr*,50>& Set) {
+ if (!S)
return;
- for (Stmt::child_iterator I=Terminator->child_begin(), E=Terminator->child_end(); I!=E; ++I) {
- if (!*I) continue;
-
- if (BinaryOperator* B = dyn_cast<BinaryOperator>(*I))
+ for (Stmt::child_iterator I=S->child_begin(), E=S->child_end(); I!=E; ++I) {
+ Stmt *child = *I;
+ if (!child)
+ continue;
+
+ if (BinaryOperator* B = dyn_cast<BinaryOperator>(child))
if (B->isAssignmentOp()) Set.insert(B);
- FindSubExprAssignments(*I, Set);
+ FindSubExprAssignments(child, Set);
}
}
OpenPOWER on IntegriCloud