diff options
author | Eric Blake <eblake@redhat.com> | 2011-05-05 08:29:21 -0600 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2011-05-05 08:29:21 -0600 |
commit | 2105ae97000c7c77442b3a788c90d8fee63bd2b3 (patch) | |
tree | 7e61f0b36a8c74b24d209770d4ab7170aa4644bb | |
parent | 5daf0f340412e5733da4e3e474ebbb867c2ebf86 (diff) | |
download | autoconf-2105ae97000c7c77442b3a788c90d8fee63bd2b3.tar.gz |
doc: document dash bug with positional parameters
* doc/autoconf.texi (Shell Substitutions) <${10}>: Document
a pitfall with $10.
Signed-off-by: Eric Blake <eblake@redhat.com>
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | doc/autoconf.texi | 12 |
2 files changed, 18 insertions, 0 deletions
@@ -1,3 +1,9 @@ +2011-05-05 Eric Blake <eblake@redhat.com> + + doc: document dash bug with positional parameters + * doc/autoconf.texi (Shell Substitutions) <${10}>: Document + a pitfall with $10. + 2011-04-27 Eric Blake <eblake@redhat.com> docs: document NetBSD join bug diff --git a/doc/autoconf.texi b/doc/autoconf.texi index b466e560..7ff693f5 100644 --- a/doc/autoconf.texi +++ b/doc/autoconf.texi @@ -15846,6 +15846,18 @@ $ @kbd{echo $@{10@}} bad substitution @end example +Conversely, not all shells obey the Posix rule that when braces are +omitted, multiple digits beyond a @samp{$} imply the single-digit +positional parameter expansion concatenated with the remaining literal +digits. To work around the issue, you must use braces. + +@example +$ @kbd{bash -c 'set a b c d e f g h i j; echo $10 $@{1@}0'} +a0 a0 +$ @kbd{dash -c 'set a b c d e f g h i j; echo $10 $@{1@}0'} +j a0 +@end example + @item $@{@var{var}:-@var{value}@} @c Info cannot handle `:' in index entries. @ifnotinfo |