On Tue 11 Jul 2006 at 19:38:20 -0500, Peter Seebach wrote:
> Why? The @ expanded to nothing, as expected. It doesn't prevent other
> variables from expanding, or other text from continuing to exist.
Note that definition says "arguments". I'll have to assume it says that
for a reason. So there shall be zero arguments, if there are no
positional parameters, and echo shall print nothing (except for a
newline). I don't think you can argue with that.
Let me take this opportunity, as a devil's advocate, of another possible
generalisation of "$@" to "foo $@ bar". I would argue that
sh -c 'foo() { printargv "Testing ${@} fnord"; }; foo a b'
should print
Testing a fnord Testing b fnord
and there is nothing in the definition that will contradict this
interpretation.
> -s
-Olaf.
--
___ Olaf 'Rhialto' Seibert -- You author it, and I'll reader it.
\X/ rhialto/at/xs4all.nl -- Cetero censeo "authored" delendum esse.