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

commit r16-8897-gf201e118d14e6a2ffeeb536dec85dbf949585419
Author: Marek Polacek <[email protected]>
Date:   Tue May 12 09:19:21 2026 -0400

    testsuite: fix reflect/bases_of5.C for -m32
    
    gcc/testsuite/ChangeLog:
    
            * g++.dg/reflect/bases_of5.C: Use decltype (sizeof 0) instead of
            unsigned long.
    
    (cherry picked from commit 291a8a05c4262d3a6579c2c955c7cb5787c9ea90)

Diff:
---
 gcc/testsuite/g++.dg/reflect/bases_of5.C | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/g++.dg/reflect/bases_of5.C 
b/gcc/testsuite/g++.dg/reflect/bases_of5.C
index 1c713b22cda5..a8549a0d97ea 100644
--- a/gcc/testsuite/g++.dg/reflect/bases_of5.C
+++ b/gcc/testsuite/g++.dg/reflect/bases_of5.C
@@ -6,14 +6,14 @@ namespace std {
 template <class _E> struct initializer_list {
   typedef _E *const_iterator;
   _E *_M_array;
-  unsigned long _M_len;
+  decltype (sizeof 0) _M_len;
   constexpr long size() { return _M_len; }
   constexpr const_iterator begin() { return _M_array; }
   constexpr const_iterator end() { return begin() + size(); }
 };
 template <typename> struct allocator_traits;
 } // namespace std
-constexpr void *operator new(unsigned long, void *__p) { return __p; }
+constexpr void *operator new(decltype (sizeof 0), void *__p) { return __p; }
 namespace std {
 template <typename _Tp, typename... _Args>
 constexpr void _Construct(_Tp *__p, _Args... __args) {

Reply via email to