On OpenBSD 7.2/sparc64 I see these two test failures: FAIL: test-fenv-except-tracking-2.sh ====================================
Floating point exception (core dumped) Floating point exception (core dumped) Failed: ./test-fenv-except-tracking-2 l FAIL test-fenv-except-tracking-2.sh (exit status: 1) FAIL: test-fenv-except-trapping-2.sh ==================================== Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 1 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 1 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 1 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 2 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 2 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 2 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 3 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 3 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 3 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 4 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 4 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 4 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 5 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 5 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 5 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 6 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 6 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 6 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 7 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 7 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 7 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 8 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 8 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 8 r l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 9 p l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 9 q l Floating point exception (core dumped) Floating point exception (core dumped) Failed (got no trap): ./test-fenv-except-trapping-2 9 r l FAIL test-fenv-except-trapping-2.sh (exit status: 1) This patch acknowledges the problem and avoids the test failures. 2024-01-19 Bruno Haible <br...@clisp.org> fenv-*: Avoid test failures on OpenBSD/sparc64. * tests/test-fenv-except-tracking-2.c (main): On OpenBSD/sparc64, skip the 'long double' test. * tests/test-fenv-except-trapping-2.c (main): Skip the 'long double' tests also on OpenBSD/sparc64. diff --git a/tests/test-fenv-except-tracking-2.c b/tests/test-fenv-except-tracking-2.c index 9a76c8afda..2db4949882 100644 --- a/tests/test-fenv-except-tracking-2.c +++ b/tests/test-fenv-except-tracking-2.c @@ -66,12 +66,12 @@ main (int argc, char *argv[]) case 'l': /* This test does not work on Linux/loongarch64 with glibc 2.37. Likewise on Linux/alpha with glibc 2.7 on Linux 2.6.26. - Likewise on FreeBSD 12.2/sparc and NetBSD 8.0/sparc. + Likewise on FreeBSD 12.2/sparc, NetBSD 8.0/sparc, OpenBSD 7.2/sparc64. Likewise on OpenBSD 7.4/mips64. Cause unknown. */ #if !((__GLIBC__ >= 2 && defined __loongarch__) \ || ((__GLIBC__ == 2 && __GLIBC_MINOR__ < 36) && defined __alpha) \ - || ((defined __FreeBSD__ || defined __NetBSD__) && defined __sparc) \ + || ((defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__) && defined __sparc) \ || (defined __OpenBSD__ && defined __mips64)) { volatile long double a, b; diff --git a/tests/test-fenv-except-trapping-2.c b/tests/test-fenv-except-trapping-2.c index 63f7bc67e5..57b9341f46 100644 --- a/tests/test-fenv-except-trapping-2.c +++ b/tests/test-fenv-except-trapping-2.c @@ -480,12 +480,12 @@ main (int argc, char *argv[]) #endif /* The 'l' tests do not work on Linux/loongarch64 with glibc 2.37. Likewise on Linux/alpha with glibc 2.7 on Linux 2.6.26. - Likewise on FreeBSD 12.2/sparc and NetBSD 8.0/sparc. + Likewise on FreeBSD 12.2/sparc, NetBSD 8.0/sparc, OpenBSD 7.2/sparc64. Likewise on OpenBSD 7.4/mips64. Cause unknown. */ #if (__GLIBC__ >= 2 && defined __loongarch__) \ || ((__GLIBC__ == 2 && __GLIBC_MINOR__ < 36) && defined __alpha) \ - || ((defined __FreeBSD__ || defined __NetBSD__) && defined __sparc) \ + || ((defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__) && defined __sparc) \ || (defined __OpenBSD__ && defined __mips64) known_failure |= (type_arg[0] == 'l'); #endif