Eric Blake <eblake@xxxxxxxxxx> wrote: > >> Also a POSIX violation: >> >> http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02 >> >> "The parameter name or symbol can be enclosed in braces, which are >> optional except for positional parameters with more than one digit or >> when parameter is followed by a character that could be interpreted as >> part of the name." > > Additionally from POSIX: > > "If the parameter name or symbol is not enclosed in braces, the > expansion shall use the longest valid name (see XBD 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." > > Therefore, in "$10", 10 is not a name, so the longest name is the empty > string, and the single-character symbol is used instead, such that this > MUST be parsed as ${1}0, not as ${10}. I don't think any of this explicitly states that $10 cannot be interpreted as ${10}. All it says is that where the first character is an underscore or alphabetic, then the longest name should be used, and that to use $10 portably you must put braces around it. So I'm not going to make any changes at this point. Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe dash" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html