From 9b2a8321caeb2c01af9e1adafcaa7fdbd853b493 Mon Sep 17 00:00:00 2001 From: Hewill Kang Date: Sat, 7 Dec 2024 00:10:28 +0800 Subject: [PATCH 1/2] Use std::forward in append_range --- stl/inc/stack | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/stack b/stl/inc/stack index a50b6ded462..b7ff44d3b80 100644 --- a/stl/inc/stack +++ b/stl/inc/stack @@ -111,8 +111,8 @@ public: #if _HAS_CXX23 template <_Container_compatible_range<_Ty> _Rng> void push_range(_Rng&& _Range) { - if constexpr (requires { c.append_range(_Range); }) { - c.append_range(_Range); + if constexpr (requires { c.append_range(_STD forward<_Rng>(_Range)); }) { + c.append_range(_STD forward<_Rng>(_Range)); } else { _RANGES copy(_Range, back_insert_iterator{c}); } From ca4418e9fcfb0e7cbc0f9940bb99929720927265 Mon Sep 17 00:00:00 2001 From: Hewill Kang Date: Sat, 7 Dec 2024 00:15:25 +0800 Subject: [PATCH 2/2] Use std::forward for append_range --- stl/inc/queue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/stl/inc/queue b/stl/inc/queue index 5e58865e880..b73b8cd1fa7 100644 --- a/stl/inc/queue +++ b/stl/inc/queue @@ -126,8 +126,8 @@ public: #if _HAS_CXX23 template <_Container_compatible_range<_Ty> _Rng> void push_range(_Rng&& _Range) { - if constexpr (requires { c.append_range(_Range); }) { - c.append_range(_Range); + if constexpr (requires { c.append_range(_STD forward<_Rng>(_Range)); }) { + c.append_range(_STD forward<_Rng>(_Range)); } else { _RANGES copy(_Range, back_insert_iterator{c}); } @@ -394,8 +394,8 @@ public: void push_range(_Rng&& _Range) { const size_type _Old_size = c.size(); - if constexpr (requires { c.append_range(_Range); }) { - c.append_range(_Range); + if constexpr (requires { c.append_range(_STD forward<_Rng>(_Range)); }) { + c.append_range(_STD forward<_Rng>(_Range)); } else { _RANGES copy(_Range, back_insert_iterator{c}); }