From b4f1e4a644380282f1e873f9ab2ebb2941ca34ce Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Tue, 20 Jun 2023 09:27:04 +0100 Subject: [PATCH] libstdc++: Remove redundant code in std::to_array libstdc++-v3/ChangeLog: * include/std/array (to_array(T(&)[N])): Remove redundant condition. (to_array(T(&&)[N])): Remove redundant std::move. --- libstdc++-v3/include/std/array | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/include/std/array b/libstdc++-v3/include/std/array index b791d86ddb2..ad36cdad6d2 100644 --- a/libstdc++-v3/include/std/array +++ b/libstdc++-v3/include/std/array @@ -426,7 +426,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION static_assert(is_constructible_v<_Tp, _Tp&>); if constexpr (is_constructible_v<_Tp, _Tp&>) { - if constexpr (is_trivial_v<_Tp> && _Nm != 0) + if constexpr (is_trivial_v<_Tp>) { array, _Nm> __arr; if (!__is_constant_evaluated() && _Nm != 0) @@ -462,7 +462,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __builtin_memcpy(__arr.data(), __a, sizeof(__a)); else for (size_t __i = 0; __i < _Nm; ++__i) - __arr._M_elems[__i] = std::move(__a[__i]); + __arr._M_elems[__i] = __a[__i]; return __arr; } else