[libcxx-commits] [libcxx] [libc++]libcxx constexpr deque (PR #200929)
A. Jiang via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Jun 9 01:20:31 PDT 2026
================
@@ -19,7 +21,22 @@
#include "test_macros.h"
#include "min_allocator.h"
+#if TEST_STD_VER >= 26
+constexpr bool test() {
+ std::deque<int> d;
+ assert(d.empty());
+ d.push_back(1);
+ assert(!d.empty());
+ return true;
+}
+#endif
+
int main(int, char**) {
+#if TEST_STD_VER >= 26
----------------
frederick-vs-ja wrote:
Hmm... currently, there're 31 tests files too heavy for the default limit of Clang.
I attempted to reduce the strength (in constant evaluation) for some tests while keeping reaching 1024 `int` elements (occupying one whole `deque` block), but the work didn't seem easy.
<details><summary>Failed Tests</summary>
<p>
```
Failed Tests (31):
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.capacity/resize_size.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.cons/size.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.cons/size_value.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_range.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/pop_back.invalidation.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/pop_front.invalidation.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/push_back.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/push_front.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.special/copy.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.special/copy_backward.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.special/move.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.special/move_backward.pass.cpp
llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.special/swap.pass.cpp
```
</p>
</details>
https://github.com/llvm/llvm-project/pull/200929
More information about the libcxx-commits
mailing list