On Wed, Sep 01, 2010 at 08:04:50PM -0600, Eric Blake wrote:
> On 09/01/2010 12:48 PM, Tom G. Christensen wrote:
> >+ exec zsh ./test-vc-list-files-cvs.sh --no-reexec
>
> Tom, since the reexec lost all tracing, what about:
>
> zsh -vx ./test-vc-list-files-cvs.sh
>
Sure, output here:
http://jupiterrise.com/tmp/zsh_vx_test-vc-list-files-cvs.out
> >bash 3.1.16 is also in the path but is for some reason rejected.
>
> Hmm - I have bash 3.1.17 handy (not .16), but it passed for me on
> cygwin. Tom, would you mind:
>
> bash -cvx '
> echo $BASH_VERSION
> test $(echo y) = y || exit 1
> test -z "$EXEEXT" && exit 9
> shopt -s expand_aliases
> alias a-b="echo zoo"
> v=abx
> test ${v%x} = ab \
> && test ${v#a} = bx \
> && test $(a-b) = zoo \
> && exit 9
> '
>
echo $BASH_VERSION
+ echo '3.1.16(1)-release'
3.1.16(1)-release
test $(echo y) = y || exit 1
cho y
++ cho y
bash: line 2: cho: command not found
+ test = y
bash: line 2: test: =: unary operator expected
+ exit 1
Definitely something funny going on there.
Inserting a space so it's $( echo y) and the test passes.
$ bash -cvx '
echo $BASH_VERSION
test $( echo y) = y || exit 1
test -z "$EXEEXT" && exit 9
shopt -s expand_aliases
alias a-b="echo zoo"
v=abx
test ${v%x} = ab \
&& test ${v#a} = bx \
&& test $(a-b) = zoo \
&& exit 9
'
echo $BASH_VERSION
+ echo '3.1.16(1)-release'
3.1.16(1)-release
test $( echo y) = y || exit 1
echo y
++ echo y
+ test y = y
test -z "$EXEEXT" && exit 9
+ test -z ''
+ exit 9
-tgc