bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

str1 < str2 does not respect locale


From: wooledg
Subject: str1 < str2 does not respect locale
Date: 8 Apr 2009 12:33:21 -0000

Configuration Information [Automatically generated, do not change]:
Machine: hppa2.0
OS: hpux10.20
Compiler: /net/appl/gcc-3.3/bin/gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='hppa2.0' 
-DCONF_OSTYPE='hpux10.20' -DCONF_MACHTYPE='hppa2.0-hp-hpux10.20' 
-DCONF_VENDOR='hp' -DLOCALEDIR='/usr/local/share/locale' -DPACKAGE='bash' 
-DSHELL -DHAVE_CONFIG_H -DHPUX   -I.  -I. -I./include -I./lib -I./lib/intl 
-I/var/tmp/bash-4.0/lib/intl  -g -O2
uname output: HP-UX imadev B.10.20 A 9000/785 2008897791 two-user license
Machine Type: hppa2.0-hp-hpux10.20

Bash Version: 4.0
Patch Level: 10
Release Status: release

Description:
Strings compared with [[ string1 < string2 ]] are supposed to use
the current locale, but they don't.

Repeat-By:
imadev:/tmp/greg$ ls
ab  Ac
imadev:/tmp/greg$ [[ ab < Ac ]]; echo $?
1
imadev:/tmp/greg$ locale
LANG=en_US.iso88591
LC_CTYPE="en_US.iso88591"
LC_COLLATE="en_US.iso88591"
LC_MONETARY="en_US.iso88591"
LC_NUMERIC="en_US.iso88591"
LC_TIME=POSIX
LC_MESSAGES="en_US.iso88591"
LC_ALL=

Bash appears to be using "C" sorting (ASCII) here.  The current locale
sorts ab before Ac, as ls shows, but bash reverses this.  The exit
status from the [[ command should have been 0 (true).

This error also occurs in 2.05b and 3.2.48 (the only other versions of
bash I tested).




reply via email to

[Prev in Thread] Current Thread [Next in Thread]