https://gcc.gnu.org/g:dff46525b78b8c9433ad63e5d7396b2ecca450f9

commit r15-9937-gdff46525b78b8c9433ad63e5d7396b2ecca450f9
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Fri Jul 4 21:33:05 2025 +0100

    libstdc++: Fix typo in __size_to_integer(__GLIBCXX_TYPE_INT_N_3)
    
    The overload taking a signed type was returning unsigned and the
    overload taking an unsigned type was returning signed.
    
    libstdc++-v3/ChangeLog:
    
            * include/bits/stl_algobase.h (__size_to_integer): Move
            misplaced unsigned keyword on __size_to_integer overloads for
            __GLIBCXX_TYPE_INT_N_3 integer type.
    
    (cherry picked from commit 106591f79a3beaed226400fbdc568e95229dc936)

Diff:
---
 libstdc++-v3/include/bits/stl_algobase.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libstdc++-v3/include/bits/stl_algobase.h 
b/libstdc++-v3/include/bits/stl_algobase.h
index 119dbe9a0936..4d5662ca45bf 100644
--- a/libstdc++-v3/include/bits/stl_algobase.h
+++ b/libstdc++-v3/include/bits/stl_algobase.h
@@ -1046,9 +1046,9 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
   __size_to_integer(unsigned __GLIBCXX_TYPE_INT_N_2 __n) { return __n; }
 #endif
 #if defined(__GLIBCXX_TYPE_INT_N_3)
-  __extension__ inline _GLIBCXX_CONSTEXPR unsigned __GLIBCXX_TYPE_INT_N_3
-  __size_to_integer(__GLIBCXX_TYPE_INT_N_3 __n) { return __n; }
   __extension__ inline _GLIBCXX_CONSTEXPR __GLIBCXX_TYPE_INT_N_3
+  __size_to_integer(__GLIBCXX_TYPE_INT_N_3 __n) { return __n; }
+  __extension__ inline _GLIBCXX_CONSTEXPR unsigned __GLIBCXX_TYPE_INT_N_3
   __size_to_integer(unsigned __GLIBCXX_TYPE_INT_N_3 __n) { return __n; }
 #endif

Reply via email to