Re: locale-dependent token separator handling doesn't work in multi-byte locales

2014-10-08 Thread Eric Blake
On 10/08/2014 11:53 AM, Ángel González wrote: > Eric Blake wrote: >> On 10/08/2014 08:52 AM, Stephane Chazelas wrote: >>> When bash parses code it honours the "blank" character class in >>> the current locale as token separator. >>> >>> For instance, if "x" is a blank character in the current local

Re: locale-dependent token separator handling doesn't work in multi-byte locales

2014-10-08 Thread Ángel González
Eric Blake wrote: > On 10/08/2014 08:52 AM, Stephane Chazelas wrote: > > When bash parses code it honours the "blank" character class in > > the current locale as token separator. > > > > For instance, if "x" is a blank character in the current locale, > > Such a locale is invalid per POSIX; but

Re: locale-dependent token separator handling doesn't work in multi-byte locales

2014-10-08 Thread Stephane Chazelas
2014-10-08 09:17:18 -0600, Eric Blake: [...] > I would argue that locale-dependent parsing is probably a bug waiting to > happen, and would be in favor of removing the feature and forcing the > use of the C locale for the duration of parsing a script. Yes, that > means you can't write a variable n

Re: locale-dependent token separator handling doesn't work in multi-byte locales

2014-10-08 Thread Chet Ramey
On 10/8/14, 10:52 AM, Stephane Chazelas wrote: > When bash parses code it honours the "blank" character class in > the current locale as token separator. Posix requires it. > With bash, that only works in single-byte locales though. > Probably because bash does some isblank() on individual bytes

Re: locale-dependent token separator handling doesn't work in multi-byte locales

2014-10-08 Thread Eric Blake
On 10/08/2014 08:52 AM, Stephane Chazelas wrote: > When bash parses code it honours the "blank" character class in > the current locale as token separator. > > For instance, if "x" is a blank character in the current locale, Such a locale is invalid per POSIX; but the invalidity of the locale doe