xref: /freebsd/bin/sh/tests/expansion/cmdsubst7.0 (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
1*13de33a5SJulio Merino
2*13de33a5SJulio Merinofailures=''
3*13de33a5SJulio Merinook=''
4*13de33a5SJulio Merino
5*13de33a5SJulio Merinotestcase() {
6*13de33a5SJulio Merino	code="$1"
7*13de33a5SJulio Merino
8*13de33a5SJulio Merino	unset v
9*13de33a5SJulio Merino	eval ": \$($code)"
10*13de33a5SJulio Merino
11*13de33a5SJulio Merino	if [ "${v:+bad}" = "" ]; then
12*13de33a5SJulio Merino		ok=x$ok
13*13de33a5SJulio Merino	else
14*13de33a5SJulio Merino		failures=x$failures
15*13de33a5SJulio Merino		echo "Failure for $code"
16*13de33a5SJulio Merino	fi
17*13de33a5SJulio Merino}
18*13de33a5SJulio Merino
19*13de33a5SJulio Merinotestcase ': ${v=0}'
20*13de33a5SJulio Merinotestcase ': ${v:=0}'
21*13de33a5SJulio Merinotestcase ': $((v=1))'
22*13de33a5SJulio Merinotestcase ': $((v+=1))'
23*13de33a5SJulio Merinow='v=1'
24*13de33a5SJulio Merinotestcase ': $(($w))'
25*13de33a5SJulio Merinotestcase ': $((${$+v=1}))'
26*13de33a5SJulio Merinotestcase ': $((v${$+=1}))'
27*13de33a5SJulio Merinotestcase ': $((v $(echo =) 1))'
28*13de33a5SJulio Merinotestcase ': $(($(echo $w)))'
29*13de33a5SJulio Merino
30*13de33a5SJulio Merinotest "x$failures" = x
31