From 3f272669bbc86db246c1eacc2b4dd9992f7850ba Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Fri, 19 Jan 2024 00:54:13 +0100 Subject: [PATCH] fenv-rounding: Avoid a test failure on OpenBSD/arm64. * tests/test-fenv-round.c (test_towardzero, test_upward, test_downward): Skip the 'long double' tests on OpenBSD/arm64. * doc/posix-functions/fesetround.texi: Update platforms list. --- ChangeLog | 7 +++++++ doc/posix-functions/fesetround.texi | 2 +- tests/test-fenv-round.c | 6 +++--- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 18b2278f59..cfa2dd3ec9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2024-01-18 Bruno Haible + + fenv-rounding: Avoid a test failure on OpenBSD/arm64. + * tests/test-fenv-round.c (test_towardzero, test_upward, test_downward): + Skip the 'long double' tests on OpenBSD/arm64. + * doc/posix-functions/fesetround.texi: Update platforms list. + 2024-01-18 Bruno Haible Avoid test failures in FreeBSD's GB18030 locale. diff --git a/doc/posix-functions/fesetround.texi b/doc/posix-functions/fesetround.texi index bb06c4192a..56c8876291 100644 --- a/doc/posix-functions/fesetround.texi +++ b/doc/posix-functions/fesetround.texi @@ -20,5 +20,5 @@ Portability problems not fixed by Gnulib: @itemize @item The rounding mode has no effect on @code{long double} operations on some platforms: -FreeBSD/arm64, NetBSD/sparc64, OpenBSD/mips64. +FreeBSD/arm64, NetBSD/sparc64, OpenBSD/arm64, OpenBSD/mips64. @end itemize diff --git a/tests/test-fenv-round.c b/tests/test-fenv-round.c index db2cd01c71..ce56048e51 100644 --- a/tests/test-fenv-round.c +++ b/tests/test-fenv-round.c @@ -45,7 +45,7 @@ test_towardzero () a = -1; b = 3; q = a / b; p = b * q; ASSERT (p > a); } -#if !((defined __FreeBSD__ && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) +#if !(((defined __FreeBSD__ || defined __OpenBSD__) && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) { long double volatile a, b, q, p; @@ -80,7 +80,7 @@ test_upward () a = -1; b = 3; q = a / b; p = b * q; ASSERT (p > a); } -#if !((defined __FreeBSD__ && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) +#if !(((defined __FreeBSD__ || defined __OpenBSD__) && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) { long double volatile a, b, q, p; @@ -115,7 +115,7 @@ test_downward () a = -1; b = 3; q = a / b; p = b * q; ASSERT (p < a); } -#if !((defined __FreeBSD__ && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) +#if !(((defined __FreeBSD__ || defined __OpenBSD__) && defined __aarch64__) || (defined __NetBSD__ && defined __sparcv9 /* sparc64 */) || (defined __OpenBSD__ && defined __mips64)) { long double volatile a, b, q, p; -- 2.39.5