[libcxx-commits] [libcxx] 7bed95a - [libc++] Add a regression test for erasing from a vector
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Sep 29 09:19:42 PDT 2020
Author: Arthur O'Dwyer
Date: 2020-09-29T12:19:05-04:00
New Revision: 7bed95a856f1e0146e838e7575677159f42f3bf7
URL: https://github.com/llvm/llvm-project/commit/7bed95a856f1e0146e838e7575677159f42f3bf7
DIFF: https://github.com/llvm/llvm-project/commit/7bed95a856f1e0146e838e7575677159f42f3bf7.diff
LOG: [libc++] Add a regression test for erasing from a vector
After rebasing my trivially-relocatable branch, this behavior was broken...
but no libc++ unit test caught it! Add a regression test specifically for
erasing out of a vector.
Differential Revision: https://reviews.llvm.org/D88421
Added:
Modified:
libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
Removed:
################################################################################
diff --git a/libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp b/libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
index fb9b4bfbe4ef..1d58d319b5bc 100644
--- a/libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
+++ b/libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
@@ -35,6 +35,21 @@ bool Throws::sThrows = false;
int main(int, char**)
{
+ {
+ int a1[] = {1, 2, 3, 4, 5};
+ std::vector<int> l1(a1, a1+5);
+ l1.erase(l1.begin());
+ assert(is_contiguous_container_asan_correct(l1));
+ assert(l1 == std::vector<int>(a1+1, a1+5));
+ }
+ {
+ int a1[] = {1, 2, 3, 4, 5};
+ int e1[] = {1, 3, 4, 5};
+ std::vector<int> l1(a1, a1+5);
+ l1.erase(l1.begin() + 1);
+ assert(is_contiguous_container_asan_correct(l1));
+ assert(l1 == std::vector<int>(e1, e1+4));
+ }
{
int a1[] = {1, 2, 3};
std::vector<int> l1(a1, a1+3);
More information about the libcxx-commits
mailing list