On GitHub, they upgraded the macOS machines from macOS 15.3
Darwin Mac-1744297320864.local 24.3.0 Darwin Kernel Version 24.3.0: Thu Jan
2 20:16:37 PST 2025; root:xnu-11215.81.4~3/RELEASE_ARM64_VMAPPLE arm64
to
Darwin Mac-1744360147416.local 24.4.0 Darwin Kernel Version 24.4.0: Wed Mar
19 21:17:16 PDT 2025; root:xnu-11417.101.15~1/RELEASE_ARM64_VMAPPLE arm64
and as a consequence, a couple of test fail because Apple changed
the properties of some Unicode characters. See attached log file.
This patch ought to fix the test failures.
2025-04-12 Bruno Haible <[email protected]>
is*_l, fnmatch tests: Avoid test failures on macOS 15.4.
Reported by Daniel Collins <[email protected]>
at <https://savannah.gnu.org/bugs/?67007>.
* tests/test-isgraph_l.c (main): On macOS, disable test cases that fail
on macOS 15.4.
* tests/test-isprint_l.c (main): Likewise.
* tests/test-ispunct_l.c (main): Likewise.
* tests/test-fnmatch.c (main): Likewise.
diff --git a/tests/test-fnmatch.c b/tests/test-fnmatch.c
index 5cb217a34e..c8447cd239 100644
--- a/tests/test-fnmatch.c
+++ b/tests/test-fnmatch.c
@@ -626,17 +626,17 @@ main (int argc, char *argv[])
ASSERT (fnmatch ("x[[:alnum:]]y", "x\330y", 0) == 0);
/* U+00D8 LATIN CAPITAL LETTER O WITH STROKE */
ASSERT (fnmatch ("x[[:alpha:]]y", "x\330y", 0) == 0);
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+00B8 CEDILLA */
ASSERT (fnmatch ("x[[:graph:]]y", "x\270y", 0) == 0);
#endif
/* U+00FF LATIN SMALL LETTER Y WITH DIAERESIS */
ASSERT (fnmatch ("x[[:lower:]]y", "x\377y", 0) == 0);
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+00B8 CEDILLA */
ASSERT (fnmatch ("x[[:print:]]y", "x\270y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+00BF INVERTED QUESTION MARK */
ASSERT (fnmatch ("x[[:punct:]]y", "x\277y", 0) == 0);
#endif
@@ -794,7 +794,7 @@ main (int argc, char *argv[])
/* U+00B8 CEDILLA */
ASSERT (fnmatch ("x[[:print:]]y", "x\217\242\261y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+00D7 MULTIPLICATION SIGN */
ASSERT (fnmatch ("x[[:punct:]]y", "x\241\337y", 0) == 0);
#endif
@@ -863,15 +863,15 @@ main (int argc, char *argv[])
ASSERT (fnmatch ("x?y", "x\250\271y", 0) == 0); /* "xÃŒy" */
ASSERT (fnmatch ("x?y", "x\201\060\211\070y", 0) == 0); /* "xÃy" */
ASSERT (fnmatch ("x?y", "x\224\071\375\067y", 0) == 0); /* "xðy" */
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __sun)
/* U+0141 LATIN CAPITAL LETTER L WITH STROKE */
ASSERT (fnmatch ("x[[:alnum:]]y", "x\201\060\221\071y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __sun)
/* U+0141 LATIN CAPITAL LETTER L WITH STROKE */
ASSERT (fnmatch ("x[[:alpha:]]y", "x\201\060\221\071y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __sun)
/* U+00B8 CEDILLA */
ASSERT (fnmatch ("x[[:graph:]]y", "x\201\060\206\060y", 0) == 0);
#endif
@@ -879,7 +879,7 @@ main (int argc, char *argv[])
/* U+20000 <CJK Ideograph> */
ASSERT (fnmatch ("x[[:graph:]]y", "x\225\062\202\066y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __sun)
/* U+00FF LATIN SMALL LETTER Y WITH DIAERESIS */
ASSERT (fnmatch ("x[[:lower:]]y", "x\201\060\213\067y", 0) == 0);
#endif
@@ -887,7 +887,7 @@ main (int argc, char *argv[])
/* U+10441 DESERET SMALL LETTER EF */
ASSERT (fnmatch ("x[[:lower:]]y", "x\220\060\355\071y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __sun)
/* U+00B8 CEDILLA */
ASSERT (fnmatch ("x[[:print:]]y", "x\201\060\206\060y", 0) == 0);
#endif
@@ -895,7 +895,7 @@ main (int argc, char *argv[])
/* U+20000 <CJK Ideograph> */
ASSERT (fnmatch ("x[[:print:]]y", "x\225\062\202\066y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined
__illumos__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__ || defined __illumos__)
/* U+00D7 MULTIPLICATION SIGN */
ASSERT (fnmatch ("x[[:punct:]]y", "x\241\301y", 0) == 0);
#endif
@@ -903,11 +903,11 @@ main (int argc, char *argv[])
/* U+1D100 MUSICAL SYMBOL SINGLE BARLINE */
ASSERT (fnmatch ("x[[:punct:]]y", "x\224\062\273\064y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+3000 IDEOGRAPHIC SPACE */
ASSERT (fnmatch ("x[[:space:]]y", "x\241\241y", 0) == 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__
|| defined __DragonFly__)
/* U+0429 CYRILLIC CAPITAL LETTER SHCHA */
ASSERT (fnmatch ("x[[:upper:]]y", "x\247\273y", 0) == 0);
#endif
diff --git a/tests/test-isgraph_l.c b/tests/test-isgraph_l.c
index e118d86130..2ad0033ce2 100644
--- a/tests/test-isgraph_l.c
+++ b/tests/test-isgraph_l.c
@@ -117,7 +117,7 @@ main ()
is = isgraph_l ((unsigned char) '\240', locale);
ASSERT (is != 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ ||
defined __DragonFly__)
/* U+00B8 CEDILLA */
is = isgraph_l ((unsigned char) '\270', locale);
ASSERT (is != 0);
diff --git a/tests/test-isprint_l.c b/tests/test-isprint_l.c
index 8ac6bed64a..222e5567bd 100644
--- a/tests/test-isprint_l.c
+++ b/tests/test-isprint_l.c
@@ -111,12 +111,12 @@ main ()
/* U+007F <control> */
is = isprint_l ((unsigned char) '\177', locale);
ASSERT (is == 0);
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sgi ||
(defined _WIN32 && !defined __CYGWIN__))
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ ||
defined __DragonFly__ || defined __sgi || (defined _WIN32 && !defined
__CYGWIN__))
/* U+00A0 NO-BREAK SPACE */
is = isprint_l ((unsigned char) '\240', locale);
ASSERT (is != 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ ||
defined __DragonFly__)
/* U+00B8 CEDILLA */
is = isprint_l ((unsigned char) '\270', locale);
ASSERT (is != 0);
diff --git a/tests/test-ispunct_l.c b/tests/test-ispunct_l.c
index a2e873dc33..3e6c6279d3 100644
--- a/tests/test-ispunct_l.c
+++ b/tests/test-ispunct_l.c
@@ -134,12 +134,12 @@ main ()
/* Locale encoding is ISO-8859-1 or ISO-8859-15. */
int is;
- #if !(defined __FreeBSD__ || defined __DragonFly__)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ ||
defined __DragonFly__)
/* U+00BF INVERTED QUESTION MARK */
is = ispunct_l ((unsigned char) '\277', locale);
ASSERT (is != 0);
#endif
- #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun)
+ #if !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ ||
defined __DragonFly__ || defined __sun)
/* U+00D7 MULTIPLICATION SIGN */
is = ispunct_l ((unsigned char) '\327', locale);
ASSERT (is != 0);
=====================================
dummy 0: gltests/test-suite.log
=====================================
# TOTAL: 1639
# PASS: 1554
# SKIP: 79
# XFAIL: 0
# FAIL: 6
# XPASS: 0
# ERROR: 0
System information (uname -a): Darwin 24.4.0 Darwin Kernel Version 24.4.0: Wed Mar 19 21:17:16 PDT 2025; root:xnu-11417.101.15~1/RELEASE_ARM64_VMAPPLE
.. contents:: :depth: 2
FAIL: test-fnmatch-2.sh
=======================
../../gltests/test-fnmatch.c:631: assertion 'fnmatch ("x[[:graph:]]y", "x\270y", 0) == 0' failed
Stack trace:
0x104ab7fdf main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:631
../../gltests/test-fnmatch.c:637: assertion 'fnmatch ("x[[:print:]]y", "x\270y", 0) == 0' failed
Stack trace:
0x104ab8087 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:637
../../gltests/test-fnmatch.c:641: assertion 'fnmatch ("x[[:punct:]]y", "x\277y", 0) == 0' failed
Stack trace:
0x104ab80db main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:641
FAIL test-fnmatch-2.sh (exit status: 1)
FAIL: test-fnmatch-4.sh
=======================
../../gltests/test-fnmatch.c:799: assertion 'fnmatch ("x[[:punct:]]y", "x\241\337y", 0) == 0' failed
Stack trace:
0x1009ad1df main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:799
FAIL test-fnmatch-4.sh (exit status: 1)
FAIL: test-fnmatch-5.sh
=======================
../../gltests/test-fnmatch.c:868: assertion 'fnmatch ("x[[:alnum:]]y", "x\201\060\221\071y", 0) == 0' failed
Stack trace:
0x1024ad917 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:868
../../gltests/test-fnmatch.c:872: assertion 'fnmatch ("x[[:alpha:]]y", "x\201\060\221\071y", 0) == 0' failed
Stack trace:
0x1024ad96b main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:872
../../gltests/test-fnmatch.c:876: assertion 'fnmatch ("x[[:graph:]]y", "x\201\060\206\060y", 0) == 0' failed
Stack trace:
0x1024ad9bf main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:876
../../gltests/test-fnmatch.c:884: assertion 'fnmatch ("x[[:lower:]]y", "x\201\060\213\067y", 0) == 0' failed
Stack trace:
0x1024ada13 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:884
../../gltests/test-fnmatch.c:892: assertion 'fnmatch ("x[[:print:]]y", "x\201\060\206\060y", 0) == 0' failed
Stack trace:
0x1024ada67 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:892
../../gltests/test-fnmatch.c:900: assertion 'fnmatch ("x[[:punct:]]y", "x\241\301y", 0) == 0' failed
Stack trace:
0x1024adabb main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:900
../../gltests/test-fnmatch.c:908: assertion 'fnmatch ("x[[:space:]]y", "x\241\241y", 0) == 0' failed
Stack trace:
0x1024adb0f main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:908
../../gltests/test-fnmatch.c:912: assertion 'fnmatch ("x[[:upper:]]y", "x\247\273y", 0) == 0' failed
Stack trace:
0x1024adb63 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-fnmatch.c:912
FAIL test-fnmatch-5.sh (exit status: 1)
FAIL: test-isgraph_l
====================
../../gltests/test-isgraph_l.c:123: assertion 'is != 0' failed
Stack trace:
0x1025c8507 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-isgraph_l.c:123
FAIL test-isgraph_l (exit status: 1)
FAIL: test-isprint_l
====================
../../gltests/test-isprint_l.c:117: assertion 'is != 0' failed
Stack trace:
0x100f0c4b3 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-isprint_l.c:117
../../gltests/test-isprint_l.c:122: assertion 'is != 0' failed
Stack trace:
0x100f0c50f main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-isprint_l.c:122
FAIL test-isprint_l (exit status: 1)
FAIL: test-ispunct_l
====================
../../gltests/test-ispunct_l.c:140: assertion 'is != 0' failed
Stack trace:
0x1023583a3 main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-ispunct_l.c:140
../../gltests/test-ispunct_l.c:145: assertion 'is != 0' failed
Stack trace:
0x1023583ef main
/Users/runner/work/ci-testdir-check/ci-testdir-check/testdir-all/build/gltests/../../gltests/test-ispunct_l.c:145
FAIL test-ispunct_l (exit status: 1)