Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Failed tests of zsh 4.3.5 in Solaris 10 w/Sun Studio 12 CC
- X-seq: zsh-workers 24595
- From: Dagobert Michelsen <dam@xxxxxxxxxxxxx>
- To: Peter Stephenson <pws@xxxxxxx>
- Subject: Re: Failed tests of zsh 4.3.5 in Solaris 10 w/Sun Studio 12 CC
- Date: Tue, 26 Feb 2008 16:18:10 +0100
- Cc: zsh-workers@xxxxxxxxxx
- In-reply-to: <20080226145741.6e74fc22@news01>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <8AABEECB-A9A6-43EA-BED2-4BE376CBE349@xxxxxxxxxxxxx> <20080226141459.76dc362c@news01> <BD1EA7D6-C784-4ED9-9558-5B655CBC5096@xxxxxxxxxxxxx> <20080226145741.6e74fc22@news01>
Hi Peter,
Am 26.02.2008 um 15:57 schrieb Peter Stephenson:
On Tue, 26 Feb 2008 15:42:19 +0100
Dagobert Michelsen <dam@xxxxxxxxxxxxx> wrote:
first, thanks for the effort. I have applied the patch
and reran the testsuite.
./A03quoting.ztst: starting.
Test ./A03quoting.ztst failed: bad status 1, expected 0 from:
print '<\u0041>'
printf '%s\n' $'<\u0042>'
print '<\u0043>'
printf '%s\n' $'<\u0044>'
Error output:
(eval):1: cannot do charset conversion (iconv failed)
Was testing: \u in both print and printf
Weird... that's the variant I wasn't expecting since it implies
a run time failure in iconv, and not a dynamical link failure, either.
That means this call failed (Src/utils.c:4878 in the current source):
cd = iconv_open(nl_langinfo(CODESET), "UCS-4BE");
if (cd == (iconv_t)-1) {
zerr("cannot do charset conversion (iconv failed)");
CHARSET_FAILED();
}
Any idea if your iconv supports UCS-4BE? GNU iconv will tell you with
"iconv --list", but if you have a Solaris variant it's likely to be
different. Otherwise, could nl_langinfo(CODESET) not be returning
anything?
In fact I am linking against libiconv from Blastwave.org at
/opt/csw/lib. However, the charset seems to be supported:
thor% /opt/csw/bin/iconv -l | grep UCS-4BE
UCS-4BE
The system trace looks like this:
16896: sigprocmask(SIG_BLOCK, 0x080464E4, 0x080464C0) = 0
16896: sigprocmask(SIG_BLOCK, 0x080460B4, 0x08046090) = 0
16896: -> libiconv:libiconv_open(0xdf986e04, 0x80c1e90)
...and...
thor% mdb -p 16896
Loading modules: [ ]
> 0xdf986e04/S
0xdf986e04: 646
> 0x80c1e90/S
0x80c1e90: UCS-4BE
Looks like there is no 646:
thor% /opt/csw/bin/iconv -l | grep 646
ANSI_X3.4-1968 ANSI_X3.4-1986 ASCII CP367 IBM367 ISO-IR-6 ISO646-US
ISO_646.IRV:1991 US US-ASCII CSASCII
ISO-10646-UCS-2 UCS-2 CSUNICODE
ISO-10646-UCS-4 UCS-4 CSUCS4
ISO-IR-14 ISO646-JP JIS_C6220-1969-RO JP CSISO14JISC6220RO
CN GB_1988-80 ISO-IR-57 ISO646-CN CSISO57GB1988
Is this an error from zsh or is this a bug in libiconv?
Thanks!
-- Dago
Messages sorted by:
Reverse Date,
Date,
Thread,
Author