From: Jonathan Wakely Date: Fri, 8 Oct 2021 19:41:24 +0000 (+0100) Subject: libstdc++: Replace uses of _GLIBCXX_USE_INT128 in testsuite X-Git-Tag: basepoints/gcc-13~4053 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=29a9de9b40277af98515eabebb75be1f154e9505;p=thirdparty%2Fgcc.git libstdc++: Replace uses of _GLIBCXX_USE_INT128 in testsuite Since r12-435 the _GLIBCXX_USE_INT128 macro is never defined, so all uses of it in the testsuite are wrong. The tests should be checking __SIZEOF_INT128__ instead. Also add some tests for an INT_3 type, which were missing. libstdc++-v3/ChangeLog: * testsuite/18_support/numeric_limits/40856.cc: Replace use of _GLIBCXX_USE_INT128. * testsuite/18_support/numeric_limits/dr559.cc: Likewise. * testsuite/18_support/numeric_limits/lowest.cc: Likewise. * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise. * testsuite/20_util/is_floating_point/value.cc: Likewise. * testsuite/20_util/is_integral/value.cc: Likewise. * testsuite/20_util/is_signed/value.cc: Likewise. * testsuite/20_util/is_unsigned/value.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/type_identity/requirements/typedefs.cc: Likewise. * testsuite/26_numerics/bit/bit.count/countl_one.cc: Likewise. * testsuite/26_numerics/bit/bit.count/countl_zero.cc: Likewise. * testsuite/26_numerics/bit/bit.count/countr_one.cc: Likewise. * testsuite/26_numerics/bit/bit.count/countr_zero.cc: Likewise. * testsuite/26_numerics/bit/bit.count/popcount.cc: Likewise. * testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc: Likewise. * testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc: Likewise. * testsuite/26_numerics/bit/bit.pow.two/bit_width.cc: Likewise. * testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc: Likewise. * testsuite/26_numerics/bit/bit.rotate/rotl.cc: Likewise. libstdc++-v3/ChangeLog: * testsuite/26_numerics/bit/bit.rotate/rotr.cc: * testsuite/util/testsuite_common_types.h: --- diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc b/libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc index 08564fbf1744..ee1cf9c0cf87 100644 --- a/libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc +++ b/libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc @@ -19,8 +19,8 @@ #include -// libstdc++/40856 -#if defined _GLIBCXX_USE_INT128 && ! defined __STRICT_ANSI__ +// libstdc++/40856 +#if defined __SIZEOF_INT128__ static_assert(std::numeric_limits<__int128>::is_specialized == true, ""); static_assert(std::numeric_limits::is_specialized == true, ""); diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits/dr559.cc b/libstdc++-v3/testsuite/18_support/numeric_limits/dr559.cc index a90cc46b1869..96a636767390 100644 --- a/libstdc++-v3/testsuite/18_support/numeric_limits/dr559.cc +++ b/libstdc++-v3/testsuite/18_support/numeric_limits/dr559.cc @@ -98,7 +98,7 @@ int main() do_test(); do_test(); // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ do_test<__int128>(); do_test(); #endif diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc b/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc index 49c1c4d69535..b44dcf428260 100644 --- a/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc +++ b/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc @@ -74,7 +74,7 @@ void test01() do_test(); // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ do_test<__int128>(); do_test(); #endif diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits/max_digits10.cc b/libstdc++-v3/testsuite/18_support/numeric_limits/max_digits10.cc index a136439a761e..bc7317c76a34 100644 --- a/libstdc++-v3/testsuite/18_support/numeric_limits/max_digits10.cc +++ b/libstdc++-v3/testsuite/18_support/numeric_limits/max_digits10.cc @@ -49,7 +49,7 @@ test01() VERIFY( std::numeric_limits::max_digits10 == 0 ); // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ VERIFY( std::numeric_limits<__int128>::max_digits10 == 0 ); VERIFY( std::numeric_limits::max_digits10 == 0 ); #endif diff --git a/libstdc++-v3/testsuite/20_util/is_floating_point/value.cc b/libstdc++-v3/testsuite/20_util/is_floating_point/value.cc index 5dbdbf84d990..c84351c706f9 100644 --- a/libstdc++-v3/testsuite/20_util/is_floating_point/value.cc +++ b/libstdc++-v3/testsuite/20_util/is_floating_point/value.cc @@ -53,7 +53,7 @@ void test01() static_assert(test_category(true), ""); #endif -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ static_assert(test_category(false), ""); static_assert(test_category(false), ""); diff --git a/libstdc++-v3/testsuite/20_util/is_integral/value.cc b/libstdc++-v3/testsuite/20_util/is_integral/value.cc index 469232629653..44962b55895d 100644 --- a/libstdc++-v3/testsuite/20_util/is_integral/value.cc +++ b/libstdc++-v3/testsuite/20_util/is_integral/value.cc @@ -55,7 +55,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ static_assert(test_category(true), ""); static_assert(test_category(true), ""); #endif diff --git a/libstdc++-v3/testsuite/20_util/is_signed/value.cc b/libstdc++-v3/testsuite/20_util/is_signed/value.cc index f55d0f62b3a4..8d17e972090a 100644 --- a/libstdc++-v3/testsuite/20_util/is_signed/value.cc +++ b/libstdc++-v3/testsuite/20_util/is_signed/value.cc @@ -51,7 +51,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ static_assert(test_category(true), ""); static_assert(test_category(false), ""); #endif diff --git a/libstdc++-v3/testsuite/20_util/is_unsigned/value.cc b/libstdc++-v3/testsuite/20_util/is_unsigned/value.cc index bda79ecdb46a..d682220358b0 100644 --- a/libstdc++-v3/testsuite/20_util/is_unsigned/value.cc +++ b/libstdc++-v3/testsuite/20_util/is_unsigned/value.cc @@ -51,7 +51,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ static_assert(test_category(true), ""); static_assert(test_category(false), ""); #endif diff --git a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-1.cc b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-1.cc index 87b6155564aa..c010c9701dfb 100644 --- a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-1.cc +++ b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-1.cc @@ -68,7 +68,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ typedef make_signed::type test25_type; static_assert( is_same::value, "make_signed" ); diff --git a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc index 879e19f97797..0edf3d648b56 100644 --- a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc +++ b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc @@ -61,7 +61,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ typedef make_signed::type test25_type; static_assert(is_same::value, ""); diff --git a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-1.cc b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-1.cc index 3e4649a4f186..e437c53cd8e6 100644 --- a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-1.cc +++ b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-1.cc @@ -62,7 +62,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ typedef make_unsigned::type test25_type; static_assert(is_same::value, ""); diff --git a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc index 36ec6365785e..7e2b8c459e7a 100644 --- a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc +++ b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc @@ -61,7 +61,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ typedef make_unsigned::type test25_type; static_assert(is_same::value, ""); diff --git a/libstdc++-v3/testsuite/20_util/type_identity/requirements/typedefs.cc b/libstdc++-v3/testsuite/20_util/type_identity/requirements/typedefs.cc index 302162c4f869..61f84118c634 100644 --- a/libstdc++-v3/testsuite/20_util/type_identity/requirements/typedefs.cc +++ b/libstdc++-v3/testsuite/20_util/type_identity/requirements/typedefs.cc @@ -86,7 +86,7 @@ void test01() #ifndef __STRICT_ANSI__ // GNU Extensions. -#ifdef _GLIBCXX_USE_INT128 +#ifdef __SIZEOF_INT128__ static_assert(test::value, ""); static_assert(test::value, ""); #endif diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_one.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_one.cc index 9412a80049f6..5e2a314e13a6 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_one.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_one.cc @@ -74,7 +74,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -90,6 +90,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_zero.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_zero.cc index e198f8554398..dc4d2e6cbd22 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_zero.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countl_zero.cc @@ -71,7 +71,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -87,6 +87,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_one.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_one.cc index db0e76b3a399..677daa52c2d8 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_one.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_one.cc @@ -73,7 +73,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -89,6 +89,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_zero.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_zero.cc index f273dcb4b4b9..7f45fbc9d32d 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_zero.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/countr_zero.cc @@ -72,7 +72,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -88,6 +88,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/popcount.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/popcount.cc index 0f088fe6a7cd..b37b3ef54a73 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.count/popcount.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.count/popcount.cc @@ -75,7 +75,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -91,6 +91,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc index 509fce4bb097..c6ed47fda07c 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc @@ -107,7 +107,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc index d51555f323f4..eb2b66b331c0 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc @@ -79,7 +79,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -95,6 +95,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_width.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_width.cc index 8e91f5d0e0ef..053f81b0c7db 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_width.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/bit_width.cc @@ -79,7 +79,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -95,6 +95,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc index 756d57dbf856..6df9cec66652 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc @@ -127,7 +127,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -143,6 +143,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotl.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotl.cc index 6022b9b3834d..8a879eb85b22 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotl.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotl.cc @@ -104,7 +104,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -120,6 +120,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotr.cc b/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotr.cc index a77c45d9786c..46c20636cf59 100644 --- a/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotr.cc +++ b/libstdc++-v3/testsuite/26_numerics/bit/bit.rotate/rotr.cc @@ -106,7 +106,7 @@ static_assert( test( X{} ).did_not_match() ); enum E : unsigned { e }; static_assert( test( e ).did_not_match() ); -#if !defined(__STRICT_ANSI__) && defined _GLIBCXX_USE_INT128 +#if !defined(__STRICT_ANSI__) && defined __SIZEOF_INT128__ static_assert( test( (unsigned __int128)0 ) ); static_assert( test( (__int128)0 ).did_not_match() ); #endif @@ -122,6 +122,10 @@ static_assert( test( (__GLIBCXX_TYPE_INT_N_1)0 ).did_not_match() ); static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_2)0 ) ); static_assert( test( (__GLIBCXX_TYPE_INT_N_2)0 ).did_not_match() ); #endif +#if defined(__GLIBCXX_TYPE_INT_N_3) +static_assert( test( (unsigned __GLIBCXX_TYPE_INT_N_3)0 ) ); +static_assert( test( (__GLIBCXX_TYPE_INT_N_3)0 ).did_not_match() ); +#endif #include static_assert( test( (std::byte)0 ).did_not_match() ); diff --git a/libstdc++-v3/testsuite/util/testsuite_common_types.h b/libstdc++-v3/testsuite/util/testsuite_common_types.h index 9a3152b3a84d..392264fd2071 100644 --- a/libstdc++-v3/testsuite/util/testsuite_common_types.h +++ b/libstdc++-v3/testsuite/util/testsuite_common_types.h @@ -327,7 +327,7 @@ namespace __gnu_test #else typedef node char8_typelist; #endif -# if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128) +# if !defined(__STRICT_ANSI__) && defined(__SIZEOF_INT128__) __extension__ typedef __int128 a17; __extension__ typedef unsigned __int128 a18; typedef node<_GLIBCXX_TYPELIST_CHAIN2(a17, a18)> int128_typelist;