diff options
| author | Marshall Clow <mclow.lists@gmail.com> | 2019-04-29 15:38:07 +0000 |
|---|---|---|
| committer | Marshall Clow <mclow.lists@gmail.com> | 2019-04-29 15:38:07 +0000 |
| commit | 8a02f8d92801e040efecd595be9d2f2dcfaca164 (patch) | |
| tree | 159ab6253f9626347c074aafe790b88da08eed0d /libcxx/test | |
| parent | 2c0d5043a753754949926019f8de92984ec9c181 (diff) | |
| download | bcm5719-llvm-8a02f8d92801e040efecd595be9d2f2dcfaca164.tar.gz bcm5719-llvm-8a02f8d92801e040efecd595be9d2f2dcfaca164.zip | |
Add tests specifically for LWG2164. We already did this; but now we have tests. NFC
llvm-svn: 359458
Diffstat (limited to 'libcxx/test')
| -rw-r--r-- | libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp | 11 | ||||
| -rw-r--r-- | libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp | 12 |
2 files changed, 23 insertions, 0 deletions
diff --git a/libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp b/libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp index 435be207bb4..aacdb388595 100644 --- a/libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp +++ b/libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp @@ -145,5 +145,16 @@ int main(int, char**) assert(is_contiguous_container_asan_correct(c)); } + { // LWG 2164 + int arr[] = {0, 1, 2, 3, 4}; + int sz = 5; + std::vector<int> c(arr, arr+sz); + while (c.size() < c.capacity()) + c.push_back(sz++); + c.emplace_back(c.front()); + assert(c.back() == 0); + for (int i = 0; i < sz; ++i) + assert(c[i] == i); + } return 0; } diff --git a/libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp b/libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp index db2337c276e..386328405d0 100644 --- a/libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp +++ b/libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp @@ -38,5 +38,17 @@ int main(int, char**) } #endif + { // LWG 526 + int arr[] = {0, 1, 2, 3, 4}; + int sz = 5; + std::vector<int> c(arr, arr+sz); + while (c.size() < c.capacity()) + c.push_back(sz++); + c.push_back(c.front()); + assert(c.back() == 0); + for (int i = 0; i < sz; ++i) + assert(c[i] == i); + } + return 0; } |

