bug#79300: fold-nbsp test failure
Pádraig Brady <[email protected]>
| Newsgroups | gmane.comp.gnu.core-utils.bugs |
|---|---|
| Message-ID | <[email protected]> |
On 26/08/2025 03:24, Collin Funk wrote: > Bruno Haible via GNU coreutils Bug Reports <[email protected]> > writes: > >> Today's CI run reports >> FAIL: tests/fold/fold-nbsp >> on NetBSD 10 and Solaris 11.4. >> >> The log output in both cases is: >> >> FAIL: tests/fold/fold-nbsp >> ========================== >> >> --- exp1 2025-08-24 06:57:52.605590760 +0000 >> +++ out1 2025-08-24 06:57:52.607333160 +0000 >> @@ -1,3 +1,3 @@ >> abcdefghij >> -klmnop qrs >> -tuvwxyz >> +klmnop >> +qrstuvwxyz >> --- exp2 2025-08-24 06:57:52.613841250 +0000 >> +++ out2 2025-08-24 06:57:52.615577504 +0000 >> @@ -1,3 +1,3 @@ >> abcdefghij >> -klmnop qr >> -stuvwxyz >> +klmnop >> +qrstuvwxyz >> FAIL tests/fold/fold-nbsp.sh (exit status: 1) >> >> >> It looks like the character has been treated like a space. >> If you need a correction at the Gnulib level (in the functions iswblank, >> iswspace, c32isblank, or c32isspace), please report this to bug-gnulib. >> Alternatively, you may declare this a "quality of implementation" issue >> and simply disable the test on NetBSD and Solaris. > > Thanks. > > My initial idea was to check if U+2007 FIGURE SPACE and U+00A0 NO-BREAK > SPACE are blank using grep. But apparently Solaris grep does not handle > multibyte characters. Therefore, FIGURE SPACE cannot be checked. :( Perhaps the techniques from tests/wc/wc-nbsp.sh could be used? Maybe something like: check_space() { char="$1" # Use -L to determine whether NBSP is printable. # FreeBSD 11 and OS X treat NBSP as non printable ? test "$(env printf "=$char=" | wc -L)" = 3 && test $(env printf "=$char=" | wc -w) = 2 } if check_space '\u2007'; then ... fi cheers, Padraig