[libstdc++,testsuite] xfail double-prec from_chars for x86_64 ldbl

Message ID orr0qy5tdy.fsf@lxoliva.fsfla.org
State Committed
Commit 282e4e745981c5c6e3edaae315e1f499a45402df
Headers
Series [libstdc++,testsuite] xfail double-prec from_chars for x86_64 ldbl |

Commit Message

Alexandre Oliva May 30, 2023, 4:35 a.m. UTC
  When long double is wider than double, but from_chars is implemented
in terms of double, tests that involve the full precision of long
double are expected to fail.  Mark them as such on x86_64-*-vxworks*.

Tested on x86_64-vxworks7r2 with gcc-12.  Ok to install?


for  libstdc++-v3/ChangeLog

	* testsuite/20_util/from_chars/4.cc: Skip long double test06
	on x86_64-vxworks.
	* testsuite/20_util/to_chars/long_double.cc: Xfail run on
	x86_64-vxworks.
---
 libstdc++-v3/testsuite/20_util/from_chars/4.cc     |    2 +-
 .../testsuite/20_util/to_chars/long_double.cc      |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
  

Comments

Jonathan Wakely May 30, 2023, 7:11 a.m. UTC | #1
On Tue, 30 May 2023, 05:35 Alexandre Oliva via Libstdc++, <
libstdc++@gcc.gnu.org> wrote:

>
> When long double is wider than double, but from_chars is implemented
> in terms of double, tests that involve the full precision of long
> double are expected to fail.  Mark them as such on x86_64-*-vxworks*.
>

OK for trunk/13/12



> Tested on x86_64-vxworks7r2 with gcc-12.  Ok to install?
>
>
> for  libstdc++-v3/ChangeLog
>
>         * testsuite/20_util/from_chars/4.cc: Skip long double test06
>         on x86_64-vxworks.
>         * testsuite/20_util/to_chars/long_double.cc: Xfail run on
>         x86_64-vxworks.
> ---
>  libstdc++-v3/testsuite/20_util/from_chars/4.cc     |    2 +-
>  .../testsuite/20_util/to_chars/long_double.cc      |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> index c3594f9014bd3..63a32b511be4e 100644
> --- a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> +++ b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
> @@ -18,7 +18,7 @@
>  // <charconv> is supported in C++14 as a GNU extension
>  // { dg-do run { target c++14 } }
>  // { dg-add-options ieee }
> -// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target
> aarch64-*-vxworks* } }
> +// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target
> aarch64-*-vxworks* x86_64-*-vxworks* } }
>
>  #include <charconv>
>  #include <string>
> diff --git a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
> b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
> index 08363d9d04003..df02dff935f40 100644
> --- a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
> +++ b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
> @@ -36,7 +36,7 @@
>
>  // On systems that use double-precision from_chars for long double,
>  // this is expected to fail.
> -// { dg-xfail-run-if "from_chars limited to double-precision" {
> aarch64-*-vxworks* i*86-*-vxworks* } }
> +// { dg-xfail-run-if "from_chars limited to double-precision" {
> aarch64-*-vxworks* i*86-*-vxworks* x86_64-*-vxworks* } }
>
>  // { dg-require-effective-target ieee_floats }
>  // { dg-require-effective-target size32plus }
>
>
> --
> Alexandre Oliva, happy hacker                https://FSFLA.org/blogs/lxo/
>    Free Software Activist                       GNU Toolchain Engineer
> Disinformation flourishes because many people care deeply about injustice
> but very few check the facts.  Ask me about <https://stallmansupport.org>
>
  

Patch

diff --git a/libstdc++-v3/testsuite/20_util/from_chars/4.cc b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
index c3594f9014bd3..63a32b511be4e 100644
--- a/libstdc++-v3/testsuite/20_util/from_chars/4.cc
+++ b/libstdc++-v3/testsuite/20_util/from_chars/4.cc
@@ -18,7 +18,7 @@ 
 // <charconv> is supported in C++14 as a GNU extension
 // { dg-do run { target c++14 } }
 // { dg-add-options ieee }
-// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-vxworks* } }
+// { dg-additional-options "-DSKIP_LONG_DOUBLE" { target aarch64-*-vxworks* x86_64-*-vxworks* } }
 
 #include <charconv>
 #include <string>
diff --git a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
index 08363d9d04003..df02dff935f40 100644
--- a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
+++ b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc
@@ -36,7 +36,7 @@ 
 
 // On systems that use double-precision from_chars for long double,
 // this is expected to fail.
-// { dg-xfail-run-if "from_chars limited to double-precision" { aarch64-*-vxworks* i*86-*-vxworks* } }
+// { dg-xfail-run-if "from_chars limited to double-precision" { aarch64-*-vxworks* i*86-*-vxworks* x86_64-*-vxworks* } }
 
 // { dg-require-effective-target ieee_floats }
 // { dg-require-effective-target size32plus }