[libcxx-commits] [libcxx] [libcxx] Minor fixes of tests for flat_[multi]{set, map} for compatibility with MSVC (PR #170493)
Vojtěch Michal via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Dec 4 07:50:52 PST 2025
https://github.com/vmichal updated https://github.com/llvm/llvm-project/pull/170493
>From a839614d4be92d6947a998fd2a06be523f582563 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vojt=C4=9Bch=20Michal?= <vojta.michall at email.cz>
Date: Wed, 3 Dec 2025 00:19:14 +0100
Subject: [PATCH 1/2] Make tests of flat_[multi]{set, map} constexpr only from
C++26 onwards.
---
.../flat.map/flat.map.access/at_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.access/index_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.capacity/max_size.pass.cpp | 2 +-
.../flat.map/flat.map.cons/copy_assign.pass.cpp | 4 ++--
.../flat.map/flat.map.cons/initializer_list.pass.cpp | 4 ++--
.../flat.map/flat.map.cons/iter_iter.pass.cpp | 6 +++---
.../flat.map/flat.map.cons/move_assign.pass.cpp | 4 ++--
.../flat.map/flat.map.cons/range.pass.cpp | 6 +++---
.../flat.map/flat.map.cons/sorted_container.pass.cpp | 4 ++--
.../flat.map/flat.map.cons/sorted_initializer_list.pass.cpp | 4 ++--
.../flat.map/flat.map.cons/sorted_iter_iter.pass.cpp | 6 +++---
.../flat.map/flat.map.iterators/iterator.pass.cpp | 4 ++--
.../flat.map/flat.map.modifiers/erase_key.pass.cpp | 4 ++--
.../flat.map.modifiers/erase_key_transparent.pass.cpp | 6 +++---
.../flat.map/flat.map.modifiers/extract.pass.cpp | 4 ++--
.../flat.map/flat.map.modifiers/insert_iter_iter.pass.cpp | 6 +++---
.../insert_or_assign_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.modifiers/insert_range.pass.cpp | 4 ++--
.../flat.map/flat.map.modifiers/insert_rv.pass.cpp | 6 +++---
.../flat.map/flat.map.modifiers/insert_transparent.pass.cpp | 2 +-
.../flat.map.modifiers/try_emplace_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.observers/comp.pass.cpp | 2 +-
.../flat.map.operations/contains_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.operations/count_transparent.pass.cpp | 4 ++--
.../flat.map.operations/equal_range_transparent.pass.cpp | 4 ++--
.../flat.map/flat.map.operations/find_transparent.pass.cpp | 4 ++--
.../flat.map.operations/lower_bound_transparent.pass.cpp | 4 ++--
.../flat.map.operations/upper_bound_transparent.pass.cpp | 4 ++--
.../flat.multimap/flat.multimap.capacity/max_size.pass.cpp | 2 +-
.../flat.multimap/flat.multimap.iterators/iterator.pass.cpp | 4 ++--
.../flat.multimap.modifiers/erase_key.pass.cpp | 4 ++--
.../flat.multimap.modifiers/erase_key_transparent.pass.cpp | 6 +++---
.../flat.multimap/flat.multimap.modifiers/extract.pass.cpp | 4 ++--
.../flat.multimap.modifiers/insert_iter_iter.pass.cpp | 4 ++--
.../flat.multimap.modifiers/insert_range.pass.cpp | 4 ++--
.../flat.multimap.modifiers/insert_rv.pass.cpp | 6 +++---
.../flat.multimap.modifiers/insert_transparent.pass.cpp | 4 ++--
.../flat.multimap/flat.multimap.observers/comp.pass.cpp | 2 +-
.../flat.multimap.operations/contains_transparent.pass.cpp | 4 ++--
.../flat.multimap.operations/count_transparent.pass.cpp | 4 ++--
.../equal_range_transparent.pass.cpp | 4 ++--
.../flat.multimap.operations/find_transparent.pass.cpp | 4 ++--
.../lower_bound_transparent.pass.cpp | 4 ++--
.../upper_bound_transparent.pass.cpp | 4 ++--
.../flat.multiset/flat.multiset.capacity/max_size.pass.cpp | 2 +-
.../flat.multiset.cons/sorted_iter_iter.pass.cpp | 4 ++--
.../flat.multiset.modifiers/erase_key_transparent.pass.cpp | 6 +++---
.../flat.multiset/flat.multiset.modifiers/extract.pass.cpp | 4 ++--
.../flat.multiset.modifiers/insert_iter_iter.pass.cpp | 4 ++--
.../flat.multiset.modifiers/insert_range.pass.cpp | 4 ++--
.../flat.multiset/flat.multiset.observers/comp.pass.cpp | 2 +-
.../flat.multiset.operations/contains_transparent.pass.cpp | 4 ++--
.../flat.multiset.operations/count_transparent.pass.cpp | 4 ++--
.../equal_range_transparent.pass.cpp | 4 ++--
.../flat.multiset.operations/find_transparent.pass.cpp | 4 ++--
.../lower_bound_transparent.pass.cpp | 4 ++--
.../upper_bound_transparent.pass.cpp | 4 ++--
.../flat.set/flat.set.capacity/max_size.pass.cpp | 2 +-
.../flat.set/flat.set.cons/sorted_iter_iter.pass.cpp | 6 +++---
.../flat.set.modifiers/erase_key_transparent.pass.cpp | 6 +++---
.../flat.set/flat.set.modifiers/extract.pass.cpp | 4 ++--
.../flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp | 4 ++--
.../flat.set/flat.set.modifiers/insert_range.pass.cpp | 4 ++--
.../flat.set/flat.set.observers/comp.pass.cpp | 2 +-
.../flat.set.operations/contains_transparent.pass.cpp | 4 ++--
.../flat.set/flat.set.operations/count_transparent.pass.cpp | 4 ++--
.../flat.set.operations/equal_range_transparent.pass.cpp | 4 ++--
.../flat.set/flat.set.operations/find_transparent.pass.cpp | 4 ++--
.../flat.set.operations/lower_bound_transparent.pass.cpp | 4 ++--
.../flat.set.operations/upper_bound_transparent.pass.cpp | 4 ++--
.../container.adaptors/flat.set/op_compare.pass.cpp | 4 ++--
71 files changed, 144 insertions(+), 144 deletions(-)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/at_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/at_transparent.pass.cpp
index 7be6fd7cba0d5..be38768097caa 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/at_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/at_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanAt<NonTransparentMap>);
static_assert(!CanAt<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using P = std::pair<int, double>;
P ar[] = {
P(1, 1.5),
@@ -97,7 +97,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<double>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/index_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/index_transparent.pass.cpp
index 98629364654b6..5a82b1c5e0736 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/index_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/index_transparent.pass.cpp
@@ -50,7 +50,7 @@ static_assert(!CanIndex<TransparentMap, TransparentMap::iterator>);
static_assert(!CanIndex<TransparentMap, TransparentMap::const_iterator>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using P = std::pair<int, double>;
P ar[] = {
P(1, 1.5),
@@ -81,7 +81,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<double>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.capacity/max_size.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.capacity/max_size.pass.cpp
index ee01f8eb1dfe4..5b54e6cbe1dec 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.capacity/max_size.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.capacity/max_size.pass.cpp
@@ -24,7 +24,7 @@
#include "test_allocator.h"
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using A1 = limited_allocator<int, 10>;
using A2 = limited_allocator<int, 20>;
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/copy_assign.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/copy_assign.pass.cpp
index c98803f6cce9d..708fb95836f3c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/copy_assign.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/copy_assign.pass.cpp
@@ -24,7 +24,7 @@
#include "test_allocator.h"
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
// test_allocator is not propagated
using C = test_less<int>;
@@ -93,7 +93,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector, std::vector>();
#ifndef __cpp_lib_constexpr_deque
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/initializer_list.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/initializer_list.pass.cpp
index aea2002ba8d9c..0d1cfdaec0714 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/initializer_list.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/initializer_list.pass.cpp
@@ -36,7 +36,7 @@ struct DefaultCtableComp {
};
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
std::pair<int, short> expected[] = {{1, 1}, {2, 2}, {3, 3}, {5, 2}};
{
// flat_map(initializer_list<value_type>);
@@ -107,7 +107,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter.pass.cpp
index 0dce4f1993c66..8f8d74ac49d21 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter.pass.cpp
@@ -33,7 +33,7 @@
#include "../../../test_compare.h"
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using P = std::pair<Key, Value>;
@@ -100,7 +100,7 @@ constexpr void test() {
}
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test_alloc() {
+TEST_CONSTEXPR_CXX26 void test_alloc() {
using P = std::pair<int, short>;
P ar[] = {{1, 1}, {1, 2}, {1, 3}, {2, 4}, {2, 5}, {3, 6}, {2, 7}, {3, 8}, {3, 9}};
@@ -178,7 +178,7 @@ constexpr void test_alloc() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/move_assign.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/move_assign.pass.cpp
index 633c73e167a88..1814f541bb4e2 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/move_assign.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/move_assign.pass.cpp
@@ -27,7 +27,7 @@
#include "min_allocator.h"
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
using C = test_less<int>;
using A1 = test_allocator<int>;
@@ -72,7 +72,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector, std::vector>();
#ifndef __cpp_lib_constexpr_deque
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/range.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/range.pass.cpp
index 9f748738a545b..3fc8e2d746bd9 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/range.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/range.pass.cpp
@@ -69,7 +69,7 @@ static_assert(!std::is_constructible_v<Map, std::from_range_t, RangeOf<int>, std
static_assert(!std::is_constructible_v<Map, std::from_range_t, RangeOf<double>, std::less<int>, std::allocator<int>>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using P = std::pair<Key, Value>;
@@ -151,7 +151,7 @@ constexpr void test() {
}
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test_alloc() {
+TEST_CONSTEXPR_CXX26 void test_alloc() {
using P = std::pair<int, short>;
P ar[] = {{1, 1}, {1, 2}, {1, 3}, {2, 4}, {2, 5}, {3, 6}, {2, 7}, {3, 8}, {3, 9}};
{
@@ -232,7 +232,7 @@ constexpr void test_alloc() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_container.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_container.pass.cpp
index 4c583594b2501..ec4f91ade0c48 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_container.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_container.pass.cpp
@@ -35,7 +35,7 @@
#include "../../../test_compare.h"
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
// flat_map(sorted_unique_t, key_container_type , mapped_container_type)
using M = std::flat_map<int, char, std::less<int>, KeyContainer<int>, ValueContainer<char>>;
@@ -141,7 +141,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_initializer_list.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_initializer_list.pass.cpp
index e8ac5d3961f7b..454e58cc187db 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_initializer_list.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_initializer_list.pass.cpp
@@ -39,7 +39,7 @@ constexpr auto il2 = il<int, short>;
constexpr auto il3 = il<short, int>;
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
// flat_map(sorted_unique_t, initializer_list<value_type>);
using M = std::flat_map<int, int, std::less<int>, KeyContainer<int>, ValueContainer<int>>;
@@ -112,7 +112,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_iter_iter.pass.cpp
index f853a083e4779..da661fcf6c415 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/sorted_iter_iter.pass.cpp
@@ -31,7 +31,7 @@
#include "../../../test_compare.h"
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
@@ -105,7 +105,7 @@ constexpr void test() {
}
template <template <class...> class KeyContainer, template <class...> class ValueContainer>
-constexpr void test_alloc() {
+TEST_CONSTEXPR_CXX26 void test_alloc() {
{
// flat_map(sorted_unique_t, InputIterator , InputIterator, const Allocator&)
using A1 = test_allocator<int>;
@@ -154,7 +154,7 @@ constexpr void test_alloc() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<key_container_type, Alloc> is true
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator.pass.cpp
index eef90f4ac6bc8..7e9bf003be059 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator.pass.cpp
@@ -30,7 +30,7 @@
#include "min_allocator.h"
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, std::less<Key>, KeyContainer, ValueContainer>;
@@ -70,7 +70,7 @@ constexpr void test() {
assert(i == m.begin());
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<char>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key.pass.cpp
index e4cce76b90919..457faf91d0737 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key.pass.cpp
@@ -26,7 +26,7 @@
#include "min_allocator.h"
template <class KeyContainer, class ValueContainer, class Compare = std::less<>>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using M = std::flat_map<int, char, Compare, KeyContainer, ValueContainer>;
auto make = [](std::initializer_list<int> il) {
@@ -70,7 +70,7 @@ constexpr void test() {
assert(m.empty());
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<char>>();
test<std::vector<int>, std::vector<char>, std::greater<>>();
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key_transparent.pass.cpp
index be660b75101dc..3c3569e96918d 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/erase_key_transparent.pass.cpp
@@ -50,7 +50,7 @@ struct HeterogeneousKey {
};
template <class KeyContainer, class ValueContainer>
-constexpr void test_simple() {
+TEST_CONSTEXPR_CXX26 void test_simple() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, std::less<Key>, KeyContainer, ValueContainer>;
@@ -71,7 +71,7 @@ constexpr void test_simple() {
}
template <class KeyContainer, class ValueContainer>
-constexpr void test_transparent_comparator() {
+TEST_CONSTEXPR_CXX26 void test_transparent_comparator() {
using M = std::flat_map<std::string, int, TransparentComparator, KeyContainer, ValueContainer>;
M m = {{"alpha", 1}, {"beta", 2}, {"epsilon", 3}, {"eta", 4}, {"gamma", 5}};
ASSERT_SAME_TYPE(decltype(m.erase(Transparent<std::string>{"abc"})), typename M::size_type);
@@ -87,7 +87,7 @@ constexpr void test_transparent_comparator() {
assert(m == expected);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_simple<std::vector<int>, std::vector<double>>();
test_simple<MinSequenceContainer<int>, MinSequenceContainer<double>>();
test_simple<std::vector<int, min_allocator<int>>, std::vector<double, min_allocator<double>>>();
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/extract.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/extract.pass.cpp
index 996e16aee4a6c..4a60bfc727806 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/extract.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/extract.pass.cpp
@@ -33,7 +33,7 @@ static_assert(!CanExtract<std::flat_map<int, int> const&>);
static_assert(!CanExtract<std::flat_map<int, int> const&&>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using M = std::flat_map<int, int, std::less<int>, KeyContainer, ValueContainer>;
M m = M({1, 2, 3}, {4, 5, 6});
@@ -49,7 +49,7 @@ constexpr void test() {
LIBCPP_ASSERT(m.values().size() == 0);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_iter_iter.pass.cpp
index 9bcdc9c1f2b9e..5ab80d47e3533 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_iter_iter.pass.cpp
@@ -39,7 +39,7 @@ static_assert(!CanInsert<Map, int, int>);
static_assert(!CanInsert<Map, cpp20_input_iterator<Pair*>, cpp20_input_iterator<Pair*>>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using P = std::pair<int, double>;
using M = std::flat_map<int, double, std::less<int>, KeyContainer, ValueContainer>;
@@ -96,7 +96,7 @@ constexpr void test() {
});
}
-constexpr void test_product_iterator() {
+TEST_CONSTEXPR_CXX26 void test_product_iterator() {
using M = std::flat_map<int, int>;
{
M m1{{1, 1}, {2, 1}, {3, 1}};
@@ -116,7 +116,7 @@ constexpr void test_product_iterator() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<double>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_or_assign_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_or_assign_transparent.pass.cpp
index d036b45b958ac..66c42efd65adf 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_or_assign_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_or_assign_transparent.pass.cpp
@@ -94,7 +94,7 @@ static_assert(
!CanInsertOrAssignIter<std::flat_map<int, AssignFrom<V>, TransparentComparator>, ConvertibleTransparent<int>, V>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -212,7 +212,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<Moveable>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range.pass.cpp
index 88be747df6796..3d197e48ac769 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range.pass.cpp
@@ -39,7 +39,7 @@ static_assert(!CanInsertRange<Map, std::ranges::subrange<int*>>);
static_assert(!CanInsertRange<Map, std::ranges::subrange<double*>>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
@@ -79,7 +79,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_rv.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_rv.pass.cpp
index 76deaa43b3e4e..706043ffa829a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_rv.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_rv.pass.cpp
@@ -25,7 +25,7 @@
#include "../helpers.h"
template <class Container, class Pair>
-constexpr void do_insert_rv_test() {
+TEST_CONSTEXPR_CXX26 void do_insert_rv_test() {
using M = Container;
using P = Pair;
using R = std::pair<typename M::iterator, bool>;
@@ -60,7 +60,7 @@ constexpr void do_insert_rv_test() {
}
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -72,7 +72,7 @@ constexpr void test() {
do_insert_rv_test<M, CP>();
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<MoveOnly>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_transparent.pass.cpp
index 75ddc49c13806..70175cbb1c819 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_transparent.pass.cpp
@@ -41,7 +41,7 @@ static_assert(CanInsert<Map, Iter, std::tuple<short, double>&&>);
static_assert(!CanInsert<Map, int>);
static_assert(!CanInsert<Map, Iter, int>);
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// template<class K> pair<iterator, bool> insert(P&& x);
bool transparent_used = false;
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/try_emplace_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/try_emplace_transparent.pass.cpp
index 6a536d4d8282c..9d6095044819a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/try_emplace_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/try_emplace_transparent.pass.cpp
@@ -67,7 +67,7 @@ static_assert(!CanTryEmplace<NonTransparentMap, TransparentMapConstIter, NonConv
static_assert(!CanTryEmplace<TransparentMap, TransparentMapConstIter, ConvertibleTransparent<int>, int>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -138,7 +138,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<Moveable>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.observers/comp.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.observers/comp.pass.cpp
index 5712493740bc8..f6fb4f264eca4 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.observers/comp.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.observers/comp.pass.cpp
@@ -22,7 +22,7 @@
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using M = std::flat_map<int, char>;
using Comp = std::less<int>; // the default
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/contains_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/contains_transparent.pass.cpp
index ecbd42366dadd..64daf6fb16eb7 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/contains_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/contains_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanContains<NonTransparentMap>);
static_assert(!CanContains<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -53,7 +53,7 @@ constexpr void test() {
assert(m.contains(Transparent<std::string>{"g"}) == false);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/count_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/count_transparent.pass.cpp
index 660b2249471cb..75114df089f23 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/count_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/count_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanCount<NonTransparentMap>);
static_assert(!CanCount<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -53,7 +53,7 @@ constexpr void test() {
assert(m.count(Transparent<std::string>{"g"}) == 0);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/equal_range_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/equal_range_transparent.pass.cpp
index fbaf81417b344..d37632ff4779e 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/equal_range_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/equal_range_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanEqualRange<NonTransparentMap>);
static_assert(!CanEqualRange<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -81,7 +81,7 @@ constexpr void test() {
test_not_found(cm, "zzz", 5);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/find_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/find_transparent.pass.cpp
index a0f9a15924b4d..de1bac995108b 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/find_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/find_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanFind<NonTransparentMap>);
static_assert(!CanFind<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -69,7 +69,7 @@ constexpr void test() {
test_find(cm, "zzz", 5);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/lower_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/lower_bound_transparent.pass.cpp
index e3dfa47eb2b0b..7fc2286cfccd1 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/lower_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/lower_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanLowerBound<NonTransparentMap>);
static_assert(!CanLowerBound<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -76,7 +76,7 @@ constexpr void test() {
test_lower_bound(cm, "zzz", 5);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/upper_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/upper_bound_transparent.pass.cpp
index 54223777c4dfc..670165a63f94b 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/upper_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.map/flat.map.operations/upper_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanUpperBound<NonTransparentMap>);
static_assert(!CanUpperBound<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_map<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -76,7 +76,7 @@ constexpr void test() {
test_upper_bound(cm, "zzz", 5);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.capacity/max_size.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.capacity/max_size.pass.cpp
index fc35fec10cd95..e589052d25d1c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.capacity/max_size.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.capacity/max_size.pass.cpp
@@ -26,7 +26,7 @@
#include "test_allocator.h"
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using A1 = limited_allocator<int, 10>;
using A2 = limited_allocator<int, 20>;
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator.pass.cpp
index 66154be66cefd..f67576d76e5e0 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator.pass.cpp
@@ -32,7 +32,7 @@
#include "min_allocator.h"
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, std::less<Key>, KeyContainer, ValueContainer>;
@@ -79,7 +79,7 @@ constexpr void test() {
assert(i > m.begin()); // operator>
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<char>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key.pass.cpp
index d267c553a5c56..e737b42d48c77 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key.pass.cpp
@@ -28,7 +28,7 @@
#include "min_allocator.h"
template <class KeyContainer, class ValueContainer, class Compare = std::less<>>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using M = std::flat_multimap<int, char, Compare, KeyContainer, ValueContainer>;
auto make = [](std::initializer_list<int> il) {
@@ -78,7 +78,7 @@ constexpr void test() {
assert(m.empty());
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<char>>();
test<std::vector<int>, std::vector<char>, std::greater<>>();
#ifndef __cpp_lib_constexpr_deque
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key_transparent.pass.cpp
index ef75e34d0800f..33c7766aa2654 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/erase_key_transparent.pass.cpp
@@ -53,7 +53,7 @@ struct HeterogeneousKey {
};
template <class KeyContainer, class ValueContainer>
-constexpr void test_simple() {
+TEST_CONSTEXPR_CXX26 void test_simple() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, std::ranges::less, KeyContainer, ValueContainer>;
@@ -74,7 +74,7 @@ constexpr void test_simple() {
}
template <class KeyContainer, class ValueContainer>
-constexpr void test_transparent_comparator() {
+TEST_CONSTEXPR_CXX26 void test_transparent_comparator() {
using M = std::flat_multimap<std::string, int, TransparentComparator, KeyContainer, ValueContainer>;
using P = std::pair<std::string, int>;
M m = {
@@ -118,7 +118,7 @@ constexpr void test_transparent_comparator() {
assert(std::ranges::equal(m, std::vector<P>{}));
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
#endif
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/extract.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/extract.pass.cpp
index bc1bdcbe5c7a3..5fe15e6492149 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/extract.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/extract.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanExtract<std::flat_multimap<int, int> const&>);
static_assert(!CanExtract<std::flat_multimap<int, int> const&&>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using M = std::flat_multimap<int, int, std::less<int>, KeyContainer, ValueContainer>;
M m = M({1, 2, 2, 2, 3, 3}, {4, 5, 6, 7, 8, 9});
@@ -51,7 +51,7 @@ constexpr void test() {
LIBCPP_ASSERT(m.values().size() == 0);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_iter_iter.pass.cpp
index ad9a7695c82c1..a00fb3568a179 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_iter_iter.pass.cpp
@@ -40,7 +40,7 @@ static_assert(!CanInsert<Map, int, int>);
static_assert(!CanInsert<Map, cpp20_input_iterator<Pair*>, cpp20_input_iterator<Pair*>>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using P = std::pair<int, double>;
using M = std::flat_multimap<int, double, std::less<int>, KeyContainer, ValueContainer>;
@@ -99,7 +99,7 @@ constexpr void test() {
check_invariant(m);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<double>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_range.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_range.pass.cpp
index 639f1c0238fe4..6c10d4206d72c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_range.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_range.pass.cpp
@@ -41,7 +41,7 @@ static_assert(!CanInsertRange<Map, std::ranges::subrange<int*>>);
static_assert(!CanInsertRange<Map, std::ranges::subrange<double*>>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
@@ -71,7 +71,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_rv.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_rv.pass.cpp
index 04e6b749e63fa..8299ab5933c8b 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_rv.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_rv.pass.cpp
@@ -25,7 +25,7 @@
#include "../helpers.h"
template <class Container, class Pair>
-constexpr void do_insert_rv_test() {
+TEST_CONSTEXPR_CXX26 void do_insert_rv_test() {
using M = Container;
using P = Pair;
using R = typename M::iterator;
@@ -56,7 +56,7 @@ constexpr void do_insert_rv_test() {
}
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -68,7 +68,7 @@ constexpr void test() {
do_insert_rv_test<M, CP>();
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<MoveOnly>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_transparent.pass.cpp
index b33f64442c98f..ac7fd2e1164d8 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.modifiers/insert_transparent.pass.cpp
@@ -44,7 +44,7 @@ static_assert(!CanInsert<Map, int>);
static_assert(!CanInsert<Map, Iter, int>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -79,7 +79,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<int>, std::vector<double>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.observers/comp.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.observers/comp.pass.cpp
index 070fbb0244e63..68f0c92036cf1 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.observers/comp.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.observers/comp.pass.cpp
@@ -23,7 +23,7 @@
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using M = std::flat_multimap<int, char>;
using Comp = std::less<int>; // the default
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/contains_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/contains_transparent.pass.cpp
index 69095c2419dc3..368d2ee270ea0 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/contains_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/contains_transparent.pass.cpp
@@ -37,7 +37,7 @@ static_assert(!CanContains<NonTransparentMap>);
static_assert(!CanContains<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -55,7 +55,7 @@ constexpr void test() {
assert(m.contains(Transparent<std::string>{"g"}) == false);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/count_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/count_transparent.pass.cpp
index ee2c9bf849929..3a209e2f2e131 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/count_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/count_transparent.pass.cpp
@@ -37,7 +37,7 @@ static_assert(!CanCount<NonTransparentMap>);
static_assert(!CanCount<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -63,7 +63,7 @@ constexpr void test() {
assert(m.count(Transparent<std::string>{"g"}) == 0);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/equal_range_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/equal_range_transparent.pass.cpp
index 34bc2d8f2e81d..9c2536c2307be 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/equal_range_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/equal_range_transparent.pass.cpp
@@ -39,7 +39,7 @@ static_assert(!CanEqualRange<NonTransparentMap>);
static_assert(!CanEqualRange<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -91,7 +91,7 @@ constexpr void test() {
test_not_found(cm, "zzz", 9);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/find_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/find_transparent.pass.cpp
index 3d2a6b1eca0c1..a6db5df369ed8 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/find_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/find_transparent.pass.cpp
@@ -38,7 +38,7 @@ static_assert(!CanFind<NonTransparentMap>);
static_assert(!CanFind<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -80,7 +80,7 @@ constexpr void test() {
test_find(cm, "zzz", 10);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/lower_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/lower_bound_transparent.pass.cpp
index 55f836d5cf151..3386849b205c3 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/lower_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/lower_bound_transparent.pass.cpp
@@ -38,7 +38,7 @@ static_assert(!CanLowerBound<NonTransparentMap>);
static_assert(!CanLowerBound<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -88,7 +88,7 @@ constexpr void test() {
test_lower_bound(cm, "zzz", 11);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/upper_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/upper_bound_transparent.pass.cpp
index 817e8f8fb2402..7c65395013b4c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/upper_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.operations/upper_bound_transparent.pass.cpp
@@ -38,7 +38,7 @@ static_assert(!CanUpperBound<NonTransparentMap>);
static_assert(!CanUpperBound<const NonTransparentMap>);
template <class KeyContainer, class ValueContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
using Key = typename KeyContainer::value_type;
using Value = typename ValueContainer::value_type;
using M = std::flat_multimap<Key, Value, TransparentComparator, KeyContainer, ValueContainer>;
@@ -88,7 +88,7 @@ constexpr void test() {
test_upper_bound(cm, "zzz", 11);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector<std::string>, std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp
index fb9c38f592262..8d4b66ffab688 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp
@@ -24,7 +24,7 @@
#include "test_allocator.h"
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using A1 = limited_allocator<int, 10>;
using C = std::flat_multiset<int, std::less<int>, std::vector<int, A1>>;
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp
index a3c998114ad5b..7a3bb8289972b 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp
@@ -29,7 +29,7 @@
#include "../../../test_compare.h"
template <template <class...> class KeyContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<container_type, Alloc> is true.
@@ -156,7 +156,7 @@ constexpr void test() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test<std::vector>();
#ifndef __cpp_lib_constexpr_deque
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp
index 0613744ec5e39..b886346d0c8d2 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp
@@ -50,7 +50,7 @@ struct HeterogeneousKey {
};
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, std::less<Key>, KeyContainer>;
@@ -70,7 +70,7 @@ constexpr void test_one() {
}
template <class KeyContainer>
-constexpr void test_transparent_comparator() {
+TEST_CONSTEXPR_CXX26 void test_transparent_comparator() {
using M = std::flat_multiset<std::string, TransparentComparator, KeyContainer>;
{
M m = {"alpha", "beta", "beta", "epsilon", "epsilon", "epsilon", "eta", "eta", "gamma"};
@@ -95,7 +95,7 @@ constexpr void test_transparent_comparator() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp
index bb41cedf85497..12c7161367c7a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp
@@ -33,7 +33,7 @@ static_assert(!CanExtract<std::flat_multiset<int> const&>);
static_assert(!CanExtract<std::flat_multiset<int> const&&>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using M = std::flat_multiset<int, std::less<int>, KeyContainer>;
{
M m = M({1, 1, 3});
@@ -55,7 +55,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp
index 9b10bf3fbb1a4..92c2e57bacf25 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp
@@ -37,7 +37,7 @@ static_assert(!CanInsert<Set, int, int>);
static_assert(!CanInsert<Set, cpp20_input_iterator<int*>, cpp20_input_iterator<int*>>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using M = std::flat_multiset<int, std::less<int>, KeyContainer>;
int ar1[] = {
@@ -75,7 +75,7 @@ constexpr void test_one() {
assert(m == expected2);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp
index a9d8f7e330fed..8032c04488b74 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp
@@ -39,7 +39,7 @@ static_assert(!CanInsertRange<Set, std::ranges::subrange<std::pair<int, int>*>>)
static_assert(!CanInsertRange<Set, std::ranges::subrange<std::pair<short, short>*>>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
{
@@ -72,7 +72,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp
index 74c92f3a3f843..5bfd3ac1c6009 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp
@@ -21,7 +21,7 @@
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using M = std::flat_multiset<int>;
using Comp = std::less<int>; // the default
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp
index 3222762122f88..ff34ca10f4bf3 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanContains<NonTransparentSet>);
static_assert(!CanContains<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
@@ -60,7 +60,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp
index a1a0d6b1f0310..773857d6da53f 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanCount<NonTransparentSet>);
static_assert(!CanCount<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
{
@@ -59,7 +59,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp
index 65bff7a095dc6..495a1568f7a4e 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanEqualRange<NonTransparentSet>);
static_assert(!CanEqualRange<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
@@ -90,7 +90,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp
index 4c9c403464634..1342b91335368 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanFind<NonTransparentSet>);
static_assert(!CanFind<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
@@ -77,7 +77,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp
index e674c85ab30e6..38f6c1696a63e 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanLowerBound<NonTransparentSet>);
static_assert(!CanLowerBound<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
@@ -83,7 +83,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp
index 75140a780cceb..bc4493fd2ebd8 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanUpperBound<NonTransparentSet>);
static_assert(!CanUpperBound<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_multiset<Key, TransparentComparator, KeyContainer>;
@@ -83,7 +83,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/max_size.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/max_size.pass.cpp
index e2f52ab458c4c..e1bd559c7d990 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/max_size.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.capacity/max_size.pass.cpp
@@ -24,7 +24,7 @@
#include "test_allocator.h"
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using A1 = limited_allocator<int, 10>;
using C = std::flat_set<int, std::less<int>, std::vector<int, A1>>;
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_iter_iter.pass.cpp
index 7ffb09e7347c4..e8e2bae413c8d 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.cons/sorted_iter_iter.pass.cpp
@@ -30,7 +30,7 @@
#include "../../../test_compare.h"
template <class KeyContainer>
-constexpr void test() {
+TEST_CONSTEXPR_CXX26 void test() {
{
// flat_set(sorted_unique_t, InputIterator, InputIterator);
// cpp17_input_iterator
@@ -98,7 +98,7 @@ constexpr void test() {
}
template <template <class...> class KeyContainer>
-constexpr void test_alloc() {
+TEST_CONSTEXPR_CXX26 void test_alloc() {
{
// flat_set(sorted_unique_t, InputIterator , InputIterator, const Allocator&)
using A1 = test_allocator<int>;
@@ -137,7 +137,7 @@ constexpr void test_alloc() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
// The constructors in this subclause shall not participate in overload
// resolution unless uses_allocator_v<container_type, Alloc> is true.
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key_transparent.pass.cpp
index b6701e36a55a9..86bbc2a3b45cd 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/erase_key_transparent.pass.cpp
@@ -50,7 +50,7 @@ struct HeterogeneousKey {
};
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, std::less<Key>, KeyContainer>;
@@ -70,7 +70,7 @@ constexpr void test_one() {
}
template <class KeyContainer>
-constexpr void test_transparent_comparator() {
+TEST_CONSTEXPR_CXX26 void test_transparent_comparator() {
using M = std::flat_set<std::string, TransparentComparator, KeyContainer>;
{
M m = {"alpha", "beta", "epsilon", "eta", "gamma"};
@@ -95,7 +95,7 @@ constexpr void test_transparent_comparator() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/extract.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/extract.pass.cpp
index b554ef8154909..e65e932d1b72a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/extract.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/extract.pass.cpp
@@ -33,7 +33,7 @@ static_assert(!CanExtract<std::flat_set<int> const&>);
static_assert(!CanExtract<std::flat_set<int> const&&>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using M = std::flat_set<int, std::less<int>, KeyContainer>;
{
M m = M({1, 2, 3});
@@ -55,7 +55,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp
index af25de9b1af39..e182e5de64425 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_iter_iter.pass.cpp
@@ -37,7 +37,7 @@ static_assert(!CanInsert<Set, int, int>);
static_assert(!CanInsert<Set, cpp20_input_iterator<int*>, cpp20_input_iterator<int*>>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using M = std::flat_set<int, std::less<int>, KeyContainer>;
int ar1[] = {
@@ -75,7 +75,7 @@ constexpr void test_one() {
assert(m == expected2);
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_range.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_range.pass.cpp
index a624f9161a985..ee5645724d63c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_range.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.modifiers/insert_range.pass.cpp
@@ -39,7 +39,7 @@ static_assert(!CanInsertRange<Set, std::ranges::subrange<std::pair<int, int>*>>)
static_assert(!CanInsertRange<Set, std::ranges::subrange<std::pair<short, short>*>>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
{
@@ -83,7 +83,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.observers/comp.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.observers/comp.pass.cpp
index b1c667a879cef..b2c52d56b3844 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.observers/comp.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.observers/comp.pass.cpp
@@ -21,7 +21,7 @@
#include "test_macros.h"
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
{
using M = std::flat_set<int>;
using Comp = std::less<int>; // the default
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains_transparent.pass.cpp
index d7e45f6b706b1..e765e5cc6a23a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/contains_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanContains<NonTransparentSet>);
static_assert(!CanContains<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
@@ -60,7 +60,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count_transparent.pass.cpp
index 8686db3d400e5..1074b9389aecd 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/count_transparent.pass.cpp
@@ -35,7 +35,7 @@ static_assert(!CanCount<NonTransparentSet>);
static_assert(!CanCount<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
{
@@ -59,7 +59,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range_transparent.pass.cpp
index e6667c363963a..829a625740d50 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/equal_range_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanEqualRange<NonTransparentSet>);
static_assert(!CanEqualRange<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
@@ -87,7 +87,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find_transparent.pass.cpp
index d952ba941896b..f0b87eb48574c 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/find_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanFind<NonTransparentSet>);
static_assert(!CanFind<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
@@ -77,7 +77,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound_transparent.pass.cpp
index 3b24e051e9991..01204af91b291 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/lower_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanLowerBound<NonTransparentSet>);
static_assert(!CanLowerBound<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
@@ -83,7 +83,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound_transparent.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound_transparent.pass.cpp
index dda8858f2683a..7b96d6da7554a 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound_transparent.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.operations/upper_bound_transparent.pass.cpp
@@ -36,7 +36,7 @@ static_assert(!CanUpperBound<NonTransparentSet>);
static_assert(!CanUpperBound<const NonTransparentSet>);
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
using M = std::flat_set<Key, TransparentComparator, KeyContainer>;
@@ -83,7 +83,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<std::string>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/op_compare.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/op_compare.pass.cpp
index a8284389efd1b..89e479c7703c1 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/op_compare.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/op_compare.pass.cpp
@@ -31,7 +31,7 @@
#include "test_container_comparisons.h"
template <class KeyContainer>
-constexpr void test_one() {
+TEST_CONSTEXPR_CXX26 void test_one() {
using Key = typename KeyContainer::value_type;
{
@@ -69,7 +69,7 @@ constexpr void test_one() {
}
}
-constexpr bool test() {
+TEST_CONSTEXPR_CXX26 bool test() {
test_one<std::vector<int>>();
#ifndef __cpp_lib_constexpr_deque
if (!TEST_IS_CONSTANT_EVALUATED)
>From 93fb64cb7f640525d304532147ddbd78e4a32664 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vojt=C4=9Bch=20Michal?= <vojta.michall at email.cz>
Date: Wed, 3 Dec 2025 00:19:44 +0100
Subject: [PATCH 2/2] Protect against evil overloaded operator comma in
flat_[multi]set tests.
---
.../flat.multiset/flat.multiset.iterators/iterator.pass.cpp | 2 +-
.../flat.set/flat.set.iterators/iterator.pass.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp
index 878b2b2094f71..ed63897a2082d 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp
@@ -57,7 +57,7 @@ constexpr void test_one() {
i = m.begin(); // move-assignment
typename M::const_iterator k = i; // converting constructor
assert(i == k); // comparison
- for (int j = 0; j < 9; ++j, ++i) { // pre-increment
+ for (int j = 0; j < 9; ++j, (void)++i) { // pre-increment
assert(*i == expected[j]); // operator*
}
assert(i == m.end());
diff --git a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator.pass.cpp b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator.pass.cpp
index 8aafa97818bc7..d79a1db289777 100644
--- a/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator.pass.cpp
+++ b/libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator.pass.cpp
@@ -56,7 +56,7 @@ constexpr void test_one() {
i = m.begin(); // move-assignment
typename M::const_iterator k = i; // converting constructor
assert(i == k); // comparison
- for (int j = 1; j <= 4; ++j, ++i) { // pre-increment
+ for (int j = 1; j <= 4; ++j, (void)++i) { // pre-increment
assert(*i == j); // operator*
}
assert(i == m.end());
More information about the libcxx-commits
mailing list