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).