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 <br...@clisp.org> is*_l, fnmatch tests: Avoid test failures on macOS 15.4. Reported by Daniel Collins <solemnwarn...@solemnwarning.net> 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)