|
From: | Dagobert Michelsen |
Subject: | Re: Libidn 1.13 test tst_toutf8 fails on Solaris 8 Sparc w/Sun Studio 11 |
Date: | Mon, 23 Mar 2009 12:00:38 +0100 |
Hi Simon, (cc'ing libiconv for libiconv-issue) Am 23.03.2009 um 11:54 schrieb Simon Josefsson:
Dagobert Michelsen <address@hidden> writes:Hi, I am trying to compile libidn 1.13 on Solaris 8 Sparc with the Sun Studio 11 compiler (fully patched) and get an error on gmake check:gmake check-TESTS gmake[1]: Entering directory `/home/dam/mgar/pkg/libidn/trunk/work/ build-isa-sparcv8/libidn-1.13/tests' PASS: tst_stringprep PASS: tst_punycode PASS: tst_idna PASS: tst_idna2 PASS: tst_nfkc PASS: tst_pr29 PASS: tst_strerror FAIL: tst_toutf8 PASS: tst_tld =================================== 1 of 9 tests failed Please report to address@hidden ===================================The test program dumps core:build8s% pstack core core 'core' of 21330: ./tst_toutf8 7f7b244c memcmp (1, 118a8, fffeff9c, 21af0, 2e2f7473, 7f82b508) + c0 00011654 main (0, 0, ffbffb28, 21af4, 21908, ffbffb28) + 164 00010ae4 _start (0, ffbffb2c, 7fbec800, 0, 1, 7fbec000) + 108It was a bug in the test program, now fixed: http://git.savannah.gnu.org/cgit/libidn.git/commit/?id=056262294467f3eaa96caf63c9573957b61301a9 However this won't make the self test pass, it just fixes the crash.The user trace looks like this:build8s% truss -u\* -f ./tst_toutf8 21925: execve("tst_toutf8", 0xFFBFFD1C, 0xFFBFFD24) argc = 1 21925: getuid() = 10000 [10000] ... 21925: <- libidn:stringprep_locale_charset() = 0xff02b508 21925: -> libidn:stringprep_locale_to_utf8(0x11708, 0xfffef84c, 0xff1f0800, 0x10400) 21925: -> libc:getenv(0xff1e004c, 0x0, 0x0, 0x0) 21925: <- libc:getenv() = 0 21925: -> libc:nl_langinfo(0x31, 0xff03c000, 0x0, 0xffbffd58) 21925: -> libc:__nl_langinfo_std(0xff041f40, 0x31, 0x0, 0xffbffd58) 21925: <- libc:nl_langinfo() = 0xff02b508 21925: -> libidn:stringprep_convert(0x11708, 0xff1e005c, 0xff02b508, 0xff1f0800) 21925: -> libiconv:libiconv_open(0xff1e005c, 0xff02b508, 0x0, 0x0) 21925: -> libc:strcmp(0xffbffb62, 0xff168146, 0xa3, 0x68c) 21925: <- libc:strcmp() = 0 21925: <- libiconv:libiconv_open() = -1 21925: <- libidn:stringprep_locale_to_utf8() = 0 21925: -> libc:memcmp(0x0, 0x1170c, 0x4, 0x0) 21925: Incurred fault #6, FLTBOUNDS %pc = 0xFEFB244C 21925: siginfo: SIGSEGV SEGV_MAPERR addr=0x00000000 21925: Received signal #11, SIGSEGV [default] 21925: siginfo: SIGSEGV SEGV_MAPERR addr=0x00000000 21925: *** process killed ***Is this an libiconv-issue? libiconv is 1.12.Maybe -- iconv returns NULL here. Possibly libidn doesn't understand the locale it is in. Can you run 'tests/tst_toutf -v' and post the output?
It looks like the usual 646 / ASCII problem on Solaris: build8s% ./tst_toutf8 -v PASS: stringprep_locale_charset == 646 zsh: segmentation fault (core dumped) ./tst_toutf8 -v Bruno, I guess this will be fixed with the special build-in for Solaris in the next libiconv-release we talked about some month ago? Best regards -- Dago
[Prev in Thread] | Current Thread | [Next in Thread] |