diff options
author | Alexandre Oliva <oliva@adacore.com> | 2024-04-18 08:00:56 -0300 |
---|---|---|
committer | Alexandre Oliva <oliva@gnu.org> | 2024-04-18 08:00:56 -0300 |
commit | 5b178179e85ace01a97def40531e915c180aaeca (patch) | |
tree | 680ebac02cc0ea297e822ba8f2ddb40a7550682d | |
parent | da3504ae4d1e6872585b1107a4932efd3824e943 (diff) | |
download | gcc-5b178179e85ace01a97def40531e915c180aaeca.zip gcc-5b178179e85ace01a97def40531e915c180aaeca.tar.gz gcc-5b178179e85ace01a97def40531e915c180aaeca.tar.bz2 |
[libstdc++] [testsuite] xfail double-prec from_chars for float128_t
Tests 20_util/from_chars/4.cc and 20_util/to_chars/long_double.cc were
adjusted about a year ago to skip long double on some targets, because
the fastfloat library was limited to 64-bit doubles.
The same problem comes up in similar float128_t tests on
aarch64-vxworks. This patch adjusts them similarly.
Unlike the earlier tests, that got similar treatment for
x86_64-vxworks, these haven't failed there.
for libstdc++-v3/ChangeLog
* testsuite/20_util/from_chars/8.cc: Skip float128_t testing
on aarch64-vxworks.
* testsuite/20_util/to_chars/float128_c++23.cc: Xfail run on
aarch64-vxworks.
-rw-r--r-- | libstdc++-v3/testsuite/20_util/from_chars/8.cc | 3 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/20_util/to_chars/float128_c++23.cc | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/libstdc++-v3/testsuite/20_util/from_chars/8.cc b/libstdc++-v3/testsuite/20_util/from_chars/8.cc index ee60d88..a634342 100644 --- a/libstdc++-v3/testsuite/20_util/from_chars/8.cc +++ b/libstdc++-v3/testsuite/20_util/from_chars/8.cc @@ -17,6 +17,7 @@ // { dg-do run { target c++23 } } // { dg-add-options ieee } +// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-vxworks* } } #include <charconv> #include <string> @@ -343,7 +344,7 @@ test06() #if defined(__STDCPP_FLOAT64_T__) && defined(_GLIBCXX_DOUBLE_IS_IEEE_BINARY64) test_max_mantissa<std::float64_t, unsigned long long>(); #endif -#if defined(__GLIBCXX_TYPE_INT_N_0) \ +#if defined(__GLIBCXX_TYPE_INT_N_0) && !defined SKIP_LONG_DOUBLE \ && defined(__STDCPP_FLOAT128_T__) && defined(_GLIBCXX_LDOUBLE_IS_IEEE_BINARY128) test_max_mantissa<std::float128_t, unsigned __GLIBCXX_TYPE_INT_N_0>(); #endif diff --git a/libstdc++-v3/testsuite/20_util/to_chars/float128_c++23.cc b/libstdc++-v3/testsuite/20_util/to_chars/float128_c++23.cc index 5476328..ca00761 100644 --- a/libstdc++-v3/testsuite/20_util/to_chars/float128_c++23.cc +++ b/libstdc++-v3/testsuite/20_util/to_chars/float128_c++23.cc @@ -19,6 +19,7 @@ // { dg-require-effective-target ieee_floats } // { dg-require-effective-target size32plus } // { dg-add-options ieee } +// { dg-xfail-run-if "from_chars limited to double-precision" { aarch64-*-vxworks* } } #include <charconv> #include <stdfloat> |