aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/DataStructure/DataStructure.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Analysis/DataStructure/DataStructure.cpp')
-rw-r--r--lib/Analysis/DataStructure/DataStructure.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Analysis/DataStructure/DataStructure.cpp b/lib/Analysis/DataStructure/DataStructure.cpp
index cf117bbd6b..5a5f2177c6 100644
--- a/lib/Analysis/DataStructure/DataStructure.cpp
+++ b/lib/Analysis/DataStructure/DataStructure.cpp
@@ -695,14 +695,14 @@ void DSGraph::mergeInGraph(DSCallSite &CS, const DSGraph &Graph,
for (unsigned i = 0, e = CS.getNumPtrArgs(); i != e; ++i, ++AI) {
// Advance the argument iterator to the first pointer argument...
- while (!isPointerType(AI->getType())) {
+ while (AI != F.aend() && !isPointerType(AI->getType())) {
++AI;
#ifndef NDEBUG
if (AI == F.aend())
std::cerr << "Bad call to Function: " << F.getName() << "\n";
#endif
- assert(AI != F.aend() && "# Args provided is not # Args required!");
}
+ if (AI == F.aend()) break;
// Add the link from the argument scalar to the provided value
DSNodeHandle &NH = (*ScalarMap)[AI];