Building a testdir of the *c32* modules (i.e. without module 'uchar-h-c23') on FreeBSD 15.1, I see a couple of test failures:
FAIL: test-c32isalnum.sh ======================== ../../gltests/test-c32isalnum.c:240: assertion 'is != 0' failed Abort trap (core dumped) FAIL test-c32isalnum.sh (exit status: 1) FAIL: test-c32isalpha.sh ======================== ../../gltests/test-c32isalpha.c:238: assertion 'is != 0' failed Abort trap (core dumped) FAIL test-c32isalpha.sh (exit status: 1) FAIL: test-c32islower.sh ======================== ../../gltests/test-c32islower.c:292: assertion 'is != 0' failed Abort trap (core dumped) FAIL test-c32islower.sh (exit status: 1) FAIL: test-c32isupper.sh ======================== ../../gltests/test-c32isupper.c:313: assertion 'is != 0' failed Abort trap (core dumped) FAIL test-c32isupper.sh (exit status: 1) FAIL: test-c32tolower.sh ======================== + LC_ALL=C ./test-c32tolower 0 + LC_ALL=POSIX ./test-c32tolower 0 + : fr_FR.ISO8859-1 + test fr_FR.ISO8859-1 '!=' none + LC_ALL=fr_FR.ISO8859-1 ./test-c32tolower 1 + : ja_JP.eucJP + test ja_JP.eucJP '!=' none + LC_ALL=ja_JP.eucJP ./test-c32tolower 2 + : en_US.UTF-8 + : fr_FR.UTF-8 + test en_US.UTF-8 '!=' none + test fr_FR.UTF-8 '!=' none + testlocale=fr_FR.UTF-8 + LC_ALL=fr_FR.UTF-8 ./test-c32tolower 3 + : zh_CN.GB18030 + test zh_CN.GB18030 '!=' none + LC_ALL=zh_CN.GB18030 ./test-c32tolower 4 ../../gltests/test-c32tolower.c:402: assertion 'memeq (mb.buf, "\243\347", 2)' failed Abort trap (core dumped) + exit 1 FAIL test-c32tolower.sh (exit status: 1) FAIL: test-c32toupper.sh ======================== + LC_ALL=C ./test-c32toupper 0 + LC_ALL=POSIX ./test-c32toupper 0 + : fr_FR.ISO8859-1 + test fr_FR.ISO8859-1 '!=' none + LC_ALL=fr_FR.ISO8859-1 ./test-c32toupper 1 + : ja_JP.eucJP + test ja_JP.eucJP '!=' none + LC_ALL=ja_JP.eucJP ./test-c32toupper 2 + : en_US.UTF-8 + : fr_FR.UTF-8 + test en_US.UTF-8 '!=' none + test fr_FR.UTF-8 '!=' none + testlocale=fr_FR.UTF-8 + LC_ALL=fr_FR.UTF-8 ./test-c32toupper 3 + : zh_CN.GB18030 + test zh_CN.GB18030 '!=' none + LC_ALL=zh_CN.GB18030 ./test-c32toupper 4 ../../gltests/test-c32toupper.c:420: assertion 'memeq (mb.buf, "\243\307", 2)' failed Abort trap (core dumped) + exit 1 FAIL test-c32toupper.sh (exit status: 1) This patch fixes them. 2026-07-15 Bruno Haible <[email protected]> Fix test failures on FreeBSD 15.1. * tests/test-c32isalnum.c (main): On FreeBSD, disable tests that fail without mmodule uchar-h-c23. * tests/test-c32isalpha.c (main): Likewise. * tests/test-c32islower.c (main): Likewise. * tests/test-c32isupper.c (main): Likewise. * tests/test-c32tolower.c (main): Likewise. * tests/test-c32toupper.c (main): Likewise. diff --git a/tests/test-c32isalnum.c b/tests/test-c32isalnum.c index fd7fb77584..115cca890f 100644 --- a/tests/test-c32isalnum.c +++ b/tests/test-c32isalnum.c @@ -234,7 +234,7 @@ main (int argc, char *argv[]) is = for_character ("\243\261", 2); ASSERT (is != 0); #endif - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF4D FULLWIDTH LATIN SMALL LETTER M */ is = for_character ("\243\355", 2); ASSERT (is != 0); diff --git a/tests/test-c32isalpha.c b/tests/test-c32isalpha.c index cec64cad90..26910a4ec7 100644 --- a/tests/test-c32isalpha.c +++ b/tests/test-c32isalpha.c @@ -232,7 +232,7 @@ main (int argc, char *argv[]) is = for_character ("\243\261", 2); ASSERT (is == 0); #endif - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF4D FULLWIDTH LATIN SMALL LETTER M */ is = for_character ("\243\355", 2); ASSERT (is != 0); diff --git a/tests/test-c32islower.c b/tests/test-c32islower.c index b9fc7a070c..f653cb722f 100644 --- a/tests/test-c32islower.c +++ b/tests/test-c32islower.c @@ -286,7 +286,7 @@ main (int argc, char *argv[]) is = for_character ("\201\060\211\070", 4); ASSERT (is != 0); #endif - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ is = for_character ("\250\246", 2); ASSERT (is != 0); @@ -321,7 +321,7 @@ main (int argc, char *argv[]) /* U+3162 HANGUL LETTER YI */ is = for_character ("\201\071\256\062", 4); ASSERT (is == 0); - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF47 FULLWIDTH LATIN SMALL LETTER G */ is = for_character ("\243\347", 2); ASSERT (is != 0); diff --git a/tests/test-c32isupper.c b/tests/test-c32isupper.c index 5adfbeaa3e..01cd7f73d6 100644 --- a/tests/test-c32isupper.c +++ b/tests/test-c32isupper.c @@ -307,7 +307,7 @@ main (int argc, char *argv[]) /* U+3162 HANGUL LETTER YI */ is = for_character ("\201\071\256\062", 4); ASSERT (is == 0); - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF27 FULLWIDTH LATIN CAPITAL LETTER G */ is = for_character ("\243\307", 2); ASSERT (is != 0); diff --git a/tests/test-c32tolower.c b/tests/test-c32tolower.c index 982657fa17..c86e98b0f2 100644 --- a/tests/test-c32tolower.c +++ b/tests/test-c32tolower.c @@ -395,7 +395,7 @@ main (int argc, char *argv[]) mb = for_character ("\201\071\256\062", 4); ASSERT (mb.nbytes == 4); ASSERT (memeq (mb.buf, "\201\071\256\062", 4)); - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF27 FULLWIDTH LATIN CAPITAL LETTER G */ mb = for_character ("\243\307", 2); ASSERT (mb.nbytes == 2); diff --git a/tests/test-c32toupper.c b/tests/test-c32toupper.c index 10a2a1f55b..81d2e5e59a 100644 --- a/tests/test-c32toupper.c +++ b/tests/test-c32toupper.c @@ -413,7 +413,7 @@ main (int argc, char *argv[]) mb = for_character ("\243\307", 2); ASSERT (mb.nbytes == 2); ASSERT (memeq (mb.buf, "\243\307", 2)); - #if !defined __DragonFly__ + #if !(defined __FreeBSD__ || defined __DragonFly__) /* U+FF47 FULLWIDTH LATIN SMALL LETTER G */ mb = for_character ("\243\347", 2); ASSERT (mb.nbytes == 2);
