GNU bug report logs -
#18056
Coreutils 8.23 test-localename failure
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 18056 in the body.
You can then email your comments to 18056 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-coreutils <at> gnu.org
:
bug#18056
; Package
coreutils
.
(Sat, 19 Jul 2014 11:19:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Henrik Juul Pedersen <henrikjuul <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-coreutils <at> gnu.org
.
(Sat, 19 Jul 2014 11:19:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi I'm experiencing a test failure in coreutils 8.23
============================================================================
Testsuite summary for GNU coreutils 8.23
============================================================================
# TOTAL: 306
# PASS: 279
# SKIP: 26
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
The failure is:
coreutils-8.23 % gnulib-tests/test-localename
test-localename.c:86: assertion 'strcmp (gl_locale_name (LC_MESSAGES,
"LC_MESSAGES"), gl_locale_name_default ()) == 0' failed
My system is:
Arch linux
% uname -a
Linux Lappy 3.15.5-2-ARCH #1 SMP PREEMPT Fri Jul 11 07:56:02 CEST 2014
x86_64 GNU/Linux
% gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /build/gcc-multilib/src/gcc-4.9-20140604/configure
--prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib
--mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=
https://bugs.archlinux.org/
--enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared
--enable-threads=posix --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch
--disable-libssp --enable-gnu-unique-object --enable-linker-build-id
--enable-cloog-backend=isl --disable-isl-version-check
--disable-cloog-version-check --enable-lto --enable-plugin
--enable-install-libiberty --with-linker-hash-style=gnu --enable-multilib
--disable-werror --enable-checking=release
Thread model: posix
gcc version 4.9.0 20140604 (prerelease) (GCC)
% localectl
System Locale: LANG=en_DK.UTF-8
LC_MESSAGES=en_US.UTF-8
VC Keymap: dk-latin1
X11 Layout: n/a
I have been unable to find any misconfiguration of my locale settings.
However it is quite possibly the case.
Coreutils was built with:
./configure && make && make check
In an attempt at some debugging, I printed the two strings failing
comparison:
gl_locale_name(LC_MESSAGES (int 5), 'LC_MESSAGES'): en_US.UTF-8
gl_locale_name_default(): C
I'll provide any other information upon request.
Thanks.
Henrik Juul Pedersen
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#18056
; Package
coreutils
.
(Sat, 19 Jul 2014 15:08:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 18056 <at> debbugs.gnu.org (full text, mbox):
Henrik Juul Pedersen wrote:
> gl_locale_name(LC_MESSAGES (int 5), 'LC_MESSAGES'): en_US.UTF-8
> gl_locale_name_default(): C
Thanks, since LC_MESSAGES is supposed to be unset at that point,
gl_locale_name appears to be the culprit. Can you use GDB to figure out
why it's returning "en_US.UTF-8"? You may need to recompile with "gcc
-O0 -g3" to get decent debugging output. Or, if you can't use GDB, just
put in printf statements.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#18056
; Package
coreutils
.
(Sat, 19 Jul 2014 23:49:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 18056 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I'm a bit rusty at gdb, but here's what I've been able to find:
I compiled coreutils with -ggdb3 and was able to see, that the test called
gl_locale_name_posix, which used my systems current setlocale (do debugging
symbols):
Breakpoint 5, 0x00007ffff7a582b4 in setlocale () from /usr/lib/libc.so.6
(gdb) step
Single stepping until exit from function setlocale,
which has no line number information.
gl_locale_name_posix (category=5, categoryname=0x4035f3 "LC_MESSAGES") at
localename.c:2704
2704 }
(gdb)
gl_locale_name (category=5, categoryname=0x4035f3 "LC_MESSAGES") at
localename.c:2854
2854 if (retval != NULL)
(gdb)
2855 return retval;
(gdb)
2858 }
(gdb)
test-localename.c:86: assertion 'strcmp (gl_locale_name (LC_MESSAGES,
"LC_MESSAGES"), gl_locale_name_default ()) == 0' failed
retval from setlocale is:
(gdb) p retval
$11 = 0x606f00 "en_US.UTF-8"
So I'm unsure what to do next?
My GNU libc version is:
% pacman -Qi glibc
Name : glibc
Version : 2.19-5
Description : GNU C Library
Architecture : x86_64
[ ... ]
Build Date : 2014-05-16T10:15:30 CEST
Install Date : 2014-05-30T16:11:30 CEST
Thanks,
Henrik
On Sat, Jul 19, 2014 at 5:07 PM, Paul Eggert <eggert <at> cs.ucla.edu> wrote:
> Henrik Juul Pedersen wrote:
>
> gl_locale_name(LC_MESSAGES (int 5), 'LC_MESSAGES'): en_US.UTF-8
>> gl_locale_name_default(): C
>>
>
> Thanks, since LC_MESSAGES is supposed to be unset at that point,
> gl_locale_name appears to be the culprit. Can you use GDB to figure out
> why it's returning "en_US.UTF-8"? You may need to recompile with "gcc -O0
> -g3" to get decent debugging output. Or, if you can't use GDB, just put in
> printf statements.
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#18056
; Package
coreutils
.
(Mon, 21 Jul 2014 10:11:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 18056 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I Just tried compiling and testing the 8.22 release, in order to do a
comparison. But the test failed in the exact same way.
I also did tests on a similar but yet different arch linux installation at
work, with the exact same results.
When compiling coreutils 8.22 on 2014-03-14 the tests succeeded. So
whatever changed must be outside of coreutils.
One thing I noticed is that locale.h from the gnulib has the line:
#define setlocale rpl_setlocale
which doesn't seem to come into play (as it is my system's setlocale which
is called from the test).
I have noticed that systemd has a localectl function, but doesn't list any
changed behavior w.r.t. locales and environment variables, however, could
systemd be the culprit?
Again, thanks.
Henrik
On Sun, Jul 20, 2014 at 1:48 AM, Henrik Juul Pedersen <henrikjuul <at> gmail.com>
wrote:
> I'm a bit rusty at gdb, but here's what I've been able to find:
>
> I compiled coreutils with -ggdb3 and was able to see, that the test called
> gl_locale_name_posix, which used my systems current setlocale (do debugging
> symbols):
>
> Breakpoint 5, 0x00007ffff7a582b4 in setlocale () from /usr/lib/libc.so.6
> (gdb) step
> Single stepping until exit from function setlocale,
> which has no line number information.
> gl_locale_name_posix (category=5, categoryname=0x4035f3 "LC_MESSAGES") at
> localename.c:2704
> 2704 }
> (gdb)
> gl_locale_name (category=5, categoryname=0x4035f3 "LC_MESSAGES") at
> localename.c:2854
> 2854 if (retval != NULL)
> (gdb)
> 2855 return retval;
> (gdb)
> 2858 }
> (gdb)
> test-localename.c:86: assertion 'strcmp (gl_locale_name (LC_MESSAGES,
> "LC_MESSAGES"), gl_locale_name_default ()) == 0' failed
>
> retval from setlocale is:
> (gdb) p retval
> $11 = 0x606f00 "en_US.UTF-8"
>
> So I'm unsure what to do next?
>
> My GNU libc version is:
> % pacman -Qi glibc
> Name : glibc
> Version : 2.19-5
> Description : GNU C Library
> Architecture : x86_64
> [ ... ]
> Build Date : 2014-05-16T10:15:30 CEST
> Install Date : 2014-05-30T16:11:30 CEST
>
> Thanks,
> Henrik
>
>
> On Sat, Jul 19, 2014 at 5:07 PM, Paul Eggert <eggert <at> cs.ucla.edu> wrote:
>
>> Henrik Juul Pedersen wrote:
>>
>> gl_locale_name(LC_MESSAGES (int 5), 'LC_MESSAGES'): en_US.UTF-8
>>> gl_locale_name_default(): C
>>>
>>
>> Thanks, since LC_MESSAGES is supposed to be unset at that point,
>> gl_locale_name appears to be the culprit. Can you use GDB to figure out
>> why it's returning "en_US.UTF-8"? You may need to recompile with "gcc -O0
>> -g3" to get decent debugging output. Or, if you can't use GDB, just put in
>> printf statements.
>>
>
>
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#18056
; Package
coreutils
.
(Sat, 20 Oct 2018 03:46:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 18056 <at> debbugs.gnu.org (full text, mbox):
tags 18056 ntoabug
close 18056
stop
(triaging old bugs)
On 21/07/14 04:10 AM, Henrik Juul Pedersen wrote:
[...]
> When compiling coreutils 8.22 on 2014-03-14 the tests succeeded. So
> whatever changed must be outside of coreutils.
Given the above, and without further comments in 4 years,
I'm closing this bug.
-assaf
bug closed, send any further explanations to
18056 <at> debbugs.gnu.org and Henrik Juul Pedersen <henrikjuul <at> gmail.com>
Request was from
Assaf Gordon <assafgordon <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Sat, 20 Oct 2018 03:46:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 17 Nov 2018 12:24:06 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 220 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.