Use std::remove_if to remove elements from a vector
Suggested-by: Benjamin Kramer <benny.kra@gmail.com>
llvm-svn: 208357
diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp
index 148e58d..2c28c50 100644
--- a/llvm/lib/Analysis/ScalarEvolution.cpp
+++ b/llvm/lib/Analysis/ScalarEvolution.cpp
@@ -7224,11 +7224,10 @@
}
// Remove all SCEVConstants.
- for (unsigned I = 0; I < Terms.size();)
- if (isa<SCEVConstant>(Terms[I]))
- Terms.erase(Terms.begin() + I);
- else
- ++I;
+ Terms.erase(
+ std::remove_if(Terms.begin(), Terms.end(),
+ [](const SCEV *E) { return isa<SCEVConstant>(E);}),
+ Terms.end());
if (Terms.size() > 0)
findArrayDimensionsRec(SE, Terms, Sizes, Zero, One);