aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/ADT/SmallVector.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/llvm/ADT/SmallVector.h b/include/llvm/ADT/SmallVector.h
index d124091343..9ca089877c 100644
--- a/include/llvm/ADT/SmallVector.h
+++ b/include/llvm/ADT/SmallVector.h
@@ -463,6 +463,7 @@ public:
}
iterator erase(iterator I) {
+ assert(I >= this->begin() && I < this->end() && "Iterator out of bounds");
iterator N = I;
// Shift all elts down one.
this->move(I+1, this->end(), I);
@@ -472,6 +473,8 @@ public:
}
iterator erase(iterator S, iterator E) {
+ assert(S >= this->begin() && S <= E && E <= this->end() &&
+ "Iterator range out of bounds");
iterator N = S;
// Shift all elts down.
iterator I = this->move(E, this->end(), S);