Subject: Re: bug#16380: Failing tests on Solaris in 2.16

From: Jim Meyering <[email-masked]>
Date: Tue, 7 Jan 2014 10:53:06 -0800

On Tue, Jan 7, 2014 at 10:31 AM,  <[email-masked]> wrote:
> I suspect that the Solaris sh doesn't understand $(...), but
> rather only `...`

Hi Arnold,

Yes, that is the problem, but the sourced init.sh code works around it...
usually. By sourcing the generated shell code rather than invoking
$SHELL, we benefit from the environment set up by init.sh.

Dago, also, using $(...) is not a bashism, and imho, nothing to be
avoided.  It has been supported by all POSIX-confirming shells for
many years.  `...` is the syntax that should be avoided.  *It* causes
needless obfuscation because you cannot nest one `...` expression inside
another like you can with $(...), and worse, use of `...` has resulted
in at least one hard-to-diagnose bug in coreutils tests, where a missing
backtick led to a multi-line if-else block being silently snarfed by
the parser, as it looked for a matching backtick.