<div dir="auto"><div><br><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, 23 Jun 2026, 00:19 Nathan Myers, <<a href="mailto:ncm@cantrip.org">ncm@cantrip.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Add check that the specialization of std::allocator_traits on<br>
pmr::polymorphic_allocator<T> defines allocate_at_least.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">OK</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
libstdc++-v3/Changelog:<br>
        PR libstdc++/125890<br>
        * testsuite/20_util/polymorphic_allocator/at_least.cc: New test.<br>
---<br>
 .../20_util/polymorphic_allocator/at_least.cc | 24 +++++++++++++++++++<br>
 1 file changed, 24 insertions(+)<br>
 create mode 100644 libstdc++-v3/testsuite/20_util/polymorphic_allocator/at_least.cc<br>
<br>
diff --git a/libstdc++-v3/testsuite/20_util/polymorphic_allocator/at_least.cc b/libstdc++-v3/testsuite/20_util/polymorphic_allocator/at_least.cc<br>
new file mode 100644<br>
index 00000000000..4384645dde5<br>
--- /dev/null<br>
+++ b/libstdc++-v3/testsuite/20_util/polymorphic_allocator/at_least.cc<br>
@@ -0,0 +1,24 @@<br>
+// { dg-do run { target c++23 } }<br>
+<br>
+#include <memory_resource><br>
+#include <testsuite_hooks.h><br>
+<br>
+void<br>
+alloc_at_least()<br>
+{<br>
+  struct A { char a; };<br>
+  using alloc_A = std::pmr::polymorphic_allocator<A>;<br>
+  using traits_A = std::allocator_traits<alloc_A>;<br>
+  alloc_A alloc_a;<br>
+  // This just forwards to alloc_a::allocate:<br>
+  std::allocation_result result = traits_A::allocate_at_least(alloc_a, 1);<br>
+  VERIFY(result.count == 1);<br>
+  VERIFY(result.ptr != nullptr);<br>
+  auto [pointer, count] = result;<br>
+  traits_A::deallocate(alloc_a, pointer, count);<br>
+}<br>
+<br>
+int main()<br>
+{<br>
+  alloc_at_least();<br>
+}<br>
-- <br>
2.54.0<br>
<br>
</blockquote></div></div></div>