+2010-10-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ docs: Posix now says "((cat))" isn't portable
+ * doc/autoconf.texi (Parenthesis): Update documentation to reflect
+ what Posix 1003.1-2008 says about "((".
+
2010-10-20 Eric Blake <eblake@redhat.com>
docs: document dash bug in <>
@cindex Shell parentheses
Beware of two opening parentheses in a row, as many shell
-implementations treat them specially. Posix requires that the command
-@samp{((cat))} must behave like @samp{(cat)}, but many shells, including
+implementations treat them specially, and Posix says that a portable
+script cannot use @samp{((} outside the @samp{$((} form used for shell
+arithmetic. In traditional shells, @samp{((cat))} behaves like
+@samp{(cat)}; but many shells, including
Bash and the Korn shell, treat @samp{((cat))} as an arithmetic
expression equivalent to @samp{let "cat"}, and may or may not report an
error when they detect that @samp{cat} is not a number. As another
-example, @samp{pdksh} 5.2.14 misparses the following code:
+example, @samp{pdksh} 5.2.14 does not treat the following code
+as a traditional shell would:
@example
if ((true) || false); then