On Mon, May 09, 2005 at 12:08:04AM +0300, Jukka Suomela wrote: > Package: perl > Version: 5.8.4-8 > Severity: normal > > It seems that UTF8 encoded strings are sorted incorrectly under "use > locale". See below for an example.
> LC_COLLATE="fi_FI" > % perl -wle 'use locale; @a = @b = qw(a A b B c C ä Ä ö Ö å Å); > utf8::upgrade($_) for @b; print sort @a; print sort @b;' > aAbBcCåÅäÄöÖ > aAöäåÄÅÖbBcC > Locale: LANG=fi_FI, LC_CTYPE=fi_FI (charmap=ISO-8859-1) Hi, AIUI, you're sorting UTF-8 in a ISO-8859-1 locale, and I think perl is doing the right thing here. Consider: % perl -wle 'use locale; use POSIX qw(locale_h); @a = @b = qw(a A b B c C ä Ä ö Ö å Å); utf8::upgrade($_) for @b; setlocale(LC_COLLATE, "fi_FI.ISO-8859-1"); print sort @a; setlocale(LC_COLLATE, "fi_FI.UTF-8"); print sort @b;' aAbBcCåÅäÄöÖ aAbBcCåÅäÄöÖ Am I missing something? Cheers, -- Niko Tyni [EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

