Email List: Xaustin-group-lX
[All Lists]

Re: Invalid shell assignments in environment

To: chet.ramey@xxxxxxxx
Subject: Re: Invalid shell assignments in environment
From: "Giacomo A. Catenazzi" <cate@xxxxxxxxxx>
Date: Thu, 02 Jul 2009 17:18:03 +0200
Cc: austin-group-l@xxxxxxxxxxxxx
References: <200907012242.n61MgCCp020103@penguin.research.att.com> <4A4C2005.6030402@case.edu> <4a4c81a6.2tWl4Z9DpJUyvd+z%Joerg.Schilling@fokus.fraunhofer.de> <200907021327.n62DRe5k029384@penguin.research.att.com> <20090702143325.GA5491@squonk.masqnet> <4A4CCA35.6070009@cateee.net> <4A4CCBE1.7020801@case.edu>
Chet Ramey wrote:
Giacomo A. Catenazzi wrote:
Geoff Clare wrote:

The shell should complain about the variable name.  Quoting from
my first mail in this thread:

| There is a formal definition for "name" in this context:
| |     3.230 Name
|     In the shell command language, a word consisting solely of
|     underscores, digits, and alphabetics from the portable character
|     set. The first character of a name is not a digit.

Note the phrase "from the portable character set".  Thus u-umlaut
is not a valid character in shell variable names.
"from the portable character set", but in which locale?
The portable character set, by definition, is locale-independent.

http://www.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap06.html#tag_06_01
Hmm.
The "glyphs" are locale independent, but not the values:

6.1. "(...)Each supported locale shall include the portable character set.(...)"

and later (6.1):
"""
POSIX.1-2008 places only the following requirements on the encoded values of the characters in the portable character set:

If the encoded values associated with each member of the portable character set are not invariant across all locales supported by the implementation, if an application accesses any pair of locales where the character encodings differ, or accesses data from an application running in a locale which has different encodings from the application's current locale, the results are unspecified.
"""

ciao
cate

<Prev in Thread] Current Thread [Next in Thread>