On Saturday 18 February 2006 12:53 pm, Ralf Wildenhues wrote: > I'm sorry, but please be more precise and quote which part of the node > you mean. I cannot find this exact bug described there (CVS Autoconf).
>From autoconf-2.59 |File: autoconf.info, Node: Shell Substitutions, Next: Assignments, |Prev: File System Conventions, Up: Portable Shell | |Shell Substitutions |=================== | |Contrary to a persistent urban legend, the Bourne shell does not |systematically split variables and back-quoted expressions, in |particular on the right-hand side of assignments and in the argument of |`case'. For instance, the following code: | | case "$given_srcdir" in | .) top_srcdir="`echo "$dots" | sed 's,/$,,'`" | *) top_srcdir="$dots$given_srcdir" ;; | esac | |is more readable when written as: | | case $given_srcdir in | .) top_srcdir=`echo "$dots" | sed 's,/$,,'` | *) top_srcdir=$dots$given_srcdir ;; | esac | |and in fact it is even _more_ portable: in the first case of the first |attempt, the computation of `top_srcdir' is not portable, since not all |shells properly understand `"`..."..."...`"'. Worse yet, not all |shells understand `"`...\"...\"...`"' the same way. There is just no |portable way to use double-quoted strings inside double-quoted |back-quoted expressions (pfew!). Granted, that's referring primarily to nested double quotes, with backtick substitution, but there is an inference that the two interact in a non-portable manner, which is best avoided. Regards, Keith. _______________________________________________ Autoconf mailing list Autoconf@gnu.org http://lists.gnu.org/mailman/listinfo/autoconf