https://gcc.gnu.org/g:f4fc6d2aa809d0c4b5b1825af17bed4a601a3d7f
commit r14-10707-gf4fc6d2aa809d0c4b5b1825af17bed4a601a3d7f Author: Jonathan Wakely <jwak...@redhat.com> Date: Wed Sep 18 17:47:49 2024 +0100 libstdc++: Fix condition for ranges::copy to use memmove [PR116754] libstdc++-v3/ChangeLog: PR libstdc++/116754 * include/bits/ranges_algobase.h (__copy_or_move): Fix order of arguments to __memcpyable. (cherry picked from commit 83c6fe130a00c6c28cfffcc787a0a719966adfaf) Diff: --- libstdc++-v3/include/bits/ranges_algobase.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libstdc++-v3/include/bits/ranges_algobase.h b/libstdc++-v3/include/bits/ranges_algobase.h index e26a73a27d68..7387f616d361 100644 --- a/libstdc++-v3/include/bits/ranges_algobase.h +++ b/libstdc++-v3/include/bits/ranges_algobase.h @@ -252,7 +252,7 @@ namespace ranges { if (!std::__is_constant_evaluated()) { - if constexpr (__memcpyable<_Iter, _Out>::__value) + if constexpr (__memcpyable<_Out, _Iter>::__value) { using _ValueTypeI = iter_value_t<_Iter>; static_assert(_IsMove