Hi! On Tue, Jun 17, 2025 at 01:14:03PM +0200, Jakub Jelinek wrote: > Here is a new version of the library side of the C++26 P2786R13 paper. > For if constexpr the patch uses __builtin_constant_p trick to figure > out if __result is non-equality comparable with __first, it adds recursion > for the is_array_v cases, adds qualification on several calls and rewrites > the testcase, such that it is hopefully valid and also tests the constant > evaluation.
Now that the core part is in, I'd like to ping the library side of the paper. https://gcc.gnu.org/pipermail/libstdc++/2025-June/062131.html Thanks. > 2025-06-17 Jakub Jelinek <ja...@redhat.com> > > PR c++/119064 > * include/bits/version.def (trivially_relocatable): New. > * include/bits/version.h: Regenerate. > * include/std/type_traits (std::is_trivially_relocatable, > std::is_nothrow_relocatable, std::is_replaceable): New traits. > std::is_trivially_relocatable_v, std::is_nothrow_relocatable_v, > std::is_replaceable_v): New trait variable templates. > * include/std/memory (__glibcxx_want_trivially_relocatable): Define > before including bits/version.h. > (std::trivially_relocate): New template function. > (std::relocate): Likewise. > * testsuite/std/memory/relocate/relocate.cc: New test. Jakub