Subject: bug#74428: tests/printf/printf-cov failure on macOS

From: Pádraig Brady <[email-masked]>
Date: Fri, 6 Dec 2024 13:24:44 +0000

On 06/12/2024 07:13, Bernhard Voelker wrote:
> On 11/19/24 19:31, Pádraig Brady wrote:
>> OK I've adjusted our test to use \u00032 instead,
> 
> The bug report was talking about Macos only, but now I'm seeing this failure also
> on openSUSE for Leap 16.0 on x86_64 [1] and aarch64 [2].
> 
> Using coreutils-9.5 (which has gnulib 259829e78), glibc-2.40.
> 
> [1] https://build.opensuse.org/public/build/Base:System/16.0/x86_64/coreutils/_log
>       also saved/attached as 'cu-tests-printf-cov-x86_64.log.xz'.
> 
> [2] https://build.opensuse.org/public/build/Base:System/16.0/aarch64/coreutils/_log
>       also saved/attached as 'cu-tests-printf-cov-aarch64.log.xz'.
> 
> Here an excerpt from the latter aarch64 build log:
>     ...
>     [   93s] checking for iconv... yes
>     [   94s] checking for working iconv... no
>     [   94s] checking whether iconv is compatible with its POSIX signature... yes
>     ...
>     [  376s] FAIL: tests/printf/printf-cov
>     [  376s] =============================
>     ...
>     [  376s] U-bad-hex...
>     [  376s] u4...
>     [  376s] printf: test u4: stdout mismatch, comparing u4.1 (expected) and u4.O (actual)
>     [  376s] *** u4.1	Thu Dec  5 21:06:59 2024
>     [  376s] --- u4.O	Thu Dec  5 21:06:59 2024
>     [  376s] ***************
>     [  376s] *** 1 ****
>     [  376s] ! 0
>     [  376s] \ No newline at end of file
>     [  376s] --- 1 ----
>     [  376s] ! \u0030
>     [  376s] \ No newline at end of file
>     [  376s] U8...
>     [  376s] printf: test U8: stdout mismatch, comparing U8.1 (expected) and U8.O (actual)
>     [  376s] *** U8.1	Thu Dec  5 21:06:59 2024
>     [  376s] --- U8.O	Thu Dec  5 21:06:59 2024
>     [  376s] ***************
>     [  376s] *** 1 ****
>     [  376s] ! 0
>     [  376s] \ No newline at end of file
>     [  376s] --- 1 ----
>     [  376s] ! \u0030
>     [  376s] \ No newline at end of file
>     [  376s] u-invalid...
>     ...
>     [  376s] FAIL tests/printf/printf-cov.pl (exit status: 1)
> 
> Is this an FP on more platforms than Macos now, or another issue like wrong iconv() selection?

Interesting.
Can you put some debugging code in unicode_to_mb() to indicate the path taken?
Perhaps this is a glibc-2.40 issue (I've only tested on 2.39 as of now).

cheers,
Pádraig