mksh | 2 recursive arith: short circuit &&, ||
stdout:
1:123
1:123
0:321
1:321
stderr:
|
ash | 2 recursive arith: short circuit &&, ||
stdout:
1:123
1:123
0:321
1:321
stderr:
|
ash | 3 recursive arith: short circuit ?:
stdout:
123:321
321:321
stderr:
|
zsh | 4 recursive arith: side effects
stdout:
0:123
stderr:
|
ash | 4 recursive arith: side effects
stdout:
0:123
stderr:
|
mksh | 5 recursive arith: recursion
stdout:
stderr:
mksh: <stdin>[2]: i<=100&&(s+=i,i++,loop): expression recurses on parameter 'loop'
|
ash | 5 recursive arith: recursion
stdout:
stderr:
ash: expression recursion loop detected
|
ash | 6 recursive arith: array elements
stdout:
stderr:
ash: text[1]=d=123: not found
ash: text[2]=text[1]: not found
ash: text[3]=text[2]: not found
ash: arithmetic syntax error
|
zsh | 10 is-array with ${var@a}
stdout:
stderr:
ble/is-array: bad substitution
|
mksh | 10 is-array with ${var@a}
stdout:
stderr:
|
ash | 10 is-array with ${var@a}
stdout:
stderr:
|
zsh | 11 Sparse array with big index
stdout:
len=1048576
stderr:
|
ash | 11 Sparse array with big index
stdout:
stderr:
ash: syntax error: unexpected "("
|
zsh | 12 shift unshift reverse
stdout:
1 2 3 4 5 6
2 3 4 5 6
4 5 6
---
99 4 5 6
---
5 4 99
stderr:
(eval):4: a: assignment to invalid subscript range
|
mksh | 12 shift unshift reverse
stdout:
stderr:
|
ash | 12 shift unshift reverse
stdout:
stderr:
|
bash | 13 SparseArray Performance demo
stdout:
stderr:
|
zsh | 13 SparseArray Performance demo
stdout:
stderr:
|
mksh | 13 SparseArray Performance demo
stdout:
stderr:
|
ash | 13 SparseArray Performance demo
stdout:
stderr:
|
bash | 14 SparseArray: test length
stdout:
stderr:
|
zsh | 14 SparseArray: test length
stdout:
stderr:
|
mksh | 14 SparseArray: test length
stdout:
stderr:
|
ash | 14 SparseArray: test length
stdout:
stderr:
|
bash | 15 SparseArray: test "declare -p sp"
stdout:
declare -a a0=()
declare -a a1=([0]="1")
declare -a a2=([0]="1" [1]="2")
declare -a a=([0]="x" [1]="y" [2]="z" [3]="w" [500]="100" [1000]="100")
stderr:
|
zsh | 15 SparseArray: test "declare -p sp"
stdout:
stderr:
|
mksh | 15 SparseArray: test "declare -p sp"
stdout:
set -A a1
typeset a1[0]=1
set -A a2
typeset a2[0]=1
typeset a2[1]=2
set -A a
typeset a[0]=x
typeset a[1]=y
typeset a[2]=z
typeset a[3]=w
typeset a[500]=100
typeset a[1000]=100
stderr:
|
ash | 15 SparseArray: test "declare -p sp"
stdout:
stderr:
|
bash | 16 SparseArray: +=
stdout:
stderr:
|
zsh | 16 SparseArray: +=
stdout:
stderr:
|
mksh | 16 SparseArray: +=
stdout:
stderr:
|
ash | 16 SparseArray: +=
stdout:
stderr:
|
bash | 17 SparseArray: a[i]=v
stdout:
stderr:
|
zsh | 17 SparseArray: a[i]=v
stdout:
stderr:
|
mksh | 17 SparseArray: a[i]=v
stdout:
stderr:
|
ash | 17 SparseArray: a[i]=v
stdout:
stderr:
|
bash | 18 SparseArray: Negative index with a[i]=v
stdout:
stderr:
|
zsh | 18 SparseArray: Negative index with a[i]=v
stdout:
stderr:
|
mksh | 18 SparseArray: Negative index with a[i]=v
stdout:
stderr:
|
ash | 18 SparseArray: Negative index with a[i]=v
stdout:
stderr:
|
zsh | 19 SparseArray: a[i]=v with BigInt
stdout:
stderr:
|
mksh | 19 SparseArray: a[i]=v with BigInt
stdout:
stderr:
|
ash | 19 SparseArray: a[i]=v with BigInt
stdout:
stderr:
|
bash | 20 SparseArray: Negative out-of-bound index with a[i]=v (1/2)
stdout:
stderr:
|
zsh | 20 SparseArray: Negative out-of-bound index with a[i]=v (1/2)
stdout:
stderr:
|
mksh | 20 SparseArray: Negative out-of-bound index with a[i]=v (1/2)
stdout:
stderr:
|
ash | 20 SparseArray: Negative out-of-bound index with a[i]=v (1/2)
stdout:
stderr:
|
bash | 21 SparseArray: Negative out-of-bound index with a[i]=v (2/2)
stdout:
stderr:
|
zsh | 21 SparseArray: Negative out-of-bound index with a[i]=v (2/2)
stdout:
stderr:
|
mksh | 21 SparseArray: Negative out-of-bound index with a[i]=v (2/2)
stdout:
stderr:
|
ash | 21 SparseArray: Negative out-of-bound index with a[i]=v (2/2)
stdout:
stderr:
|
bash | 22 SparseArray: xtrace a+=()
stdout:
stderr:
|
zsh | 22 SparseArray: xtrace a+=()
stdout:
stderr:
|
mksh | 22 SparseArray: xtrace a+=()
stdout:
stderr:
|
ash | 22 SparseArray: xtrace a+=()
stdout:
stderr:
|
bash | 23 SparseArray: unset -v a[i]
stdout:
stderr:
|
zsh | 23 SparseArray: unset -v a[i]
stdout:
stderr:
|
mksh | 23 SparseArray: unset -v a[i]
stdout:
stderr:
|
ash | 23 SparseArray: unset -v a[i]
stdout:
stderr:
|
bash | 24 SparseArray: unset -v a[i] with out-of-bound negative index
stdout:
stderr:
|
zsh | 24 SparseArray: unset -v a[i] with out-of-bound negative index
stdout:
stderr:
|
mksh | 24 SparseArray: unset -v a[i] with out-of-bound negative index
stdout:
stderr:
|
ash | 24 SparseArray: unset -v a[i] with out-of-bound negative index
stdout:
stderr:
|
bash | 25 SparseArray: unset -v a[i] for max index
stdout:
stderr:
|
zsh | 25 SparseArray: unset -v a[i] for max index
stdout:
stderr:
|
mksh | 25 SparseArray: unset -v a[i] for max index
stdout:
stderr:
|
ash | 25 SparseArray: unset -v a[i] for max index
stdout:
stderr:
|
bash | 26 SparseArray: [[ -v a[i] ]]
stdout:
stderr:
|
zsh | 26 SparseArray: [[ -v a[i] ]]
stdout:
stderr:
|
mksh | 26 SparseArray: [[ -v a[i] ]]
stdout:
stderr:
|
ash | 26 SparseArray: [[ -v a[i] ]]
stdout:
stderr:
|
bash | 27 SparseArray: [[ -v a[i] ]] with invalid negative index
stdout:
stderr:
|
zsh | 27 SparseArray: [[ -v a[i] ]] with invalid negative index
stdout:
stderr:
|
mksh | 27 SparseArray: [[ -v a[i] ]] with invalid negative index
stdout:
stderr:
|
ash | 27 SparseArray: [[ -v a[i] ]] with invalid negative index
stdout:
stderr:
|
zsh | 28 SparseArray: ((sp[i])) and ((sp[i]++))
stdout:
stderr:
|
mksh | 28 SparseArray: ((sp[i])) and ((sp[i]++))
stdout:
stderr:
|
ash | 28 SparseArray: ((sp[i])) and ((sp[i]++))
stdout:
stderr:
|
bash | 29 SparseArray: ((sp[i])) and ((sp[i]++)) with invalid negative index
stdout:
0
stderr:
bash: line 7: a: bad array subscript
|
zsh | 29 SparseArray: ((sp[i])) and ((sp[i]++)) with invalid negative index
stdout:
stderr:
|
mksh | 29 SparseArray: ((sp[i])) and ((sp[i]++)) with invalid negative index
stdout:
stderr:
|
ash | 29 SparseArray: ((sp[i])) and ((sp[i]++)) with invalid negative index
stdout:
stderr:
|
bash | 30 SparseArray: ${sp[i]}
stdout:
stderr:
|
zsh | 30 SparseArray: ${sp[i]}
stdout:
stderr:
|
mksh | 30 SparseArray: ${sp[i]}
stdout:
stderr:
|
ash | 30 SparseArray: ${sp[i]}
stdout:
stderr:
|
bash | 31 SparseArray: ${sp[i]} with negative invalid index
stdout:
stderr:
|
zsh | 31 SparseArray: ${sp[i]} with negative invalid index
stdout:
stderr:
|
mksh | 31 SparseArray: ${sp[i]} with negative invalid index
stdout:
stderr:
|
ash | 31 SparseArray: ${sp[i]} with negative invalid index
stdout:
stderr:
|
bash | 32 SparseArray (YSH): @[sp] and @sp
stdout:
stderr:
|
zsh | 32 SparseArray (YSH): @[sp] and @sp
stdout:
stderr:
|
mksh | 32 SparseArray (YSH): @[sp] and @sp
stdout:
stderr:
|
ash | 32 SparseArray (YSH): @[sp] and @sp
stdout:
stderr:
|
zsh | 33 SparseArray: ${a[@]:offset:length}
stdout:
stderr:
|
mksh | 33 SparseArray: ${a[@]:offset:length}
stdout:
stderr:
|
ash | 33 SparseArray: ${a[@]:offset:length}
stdout:
stderr:
|
zsh | 34 ${@:offset:length}
stdout:
stderr:
|
mksh | 34 ${@:offset:length}
stdout:
stderr:
|
ash | 34 ${@:offset:length}
stdout:
stderr:
|
zsh | 35 SparseArray: ${a[@]:BigInt}
stdout:
stderr:
|
mksh | 35 SparseArray: ${a[@]:BigInt}
stdout:
stderr:
|
ash | 35 SparseArray: ${a[@]:BigInt}
stdout:
stderr:
|
zsh | 36 SparseArray: ${a[@]}
stdout:
stderr:
|
mksh | 36 SparseArray: ${a[@]}
stdout:
stderr:
|
ash | 36 SparseArray: ${a[@]}
stdout:
stderr:
|
zsh | 37 SparseArray: ${a[@]#...}
stdout:
stderr:
|
mksh | 37 SparseArray: ${a[@]#...}
stdout:
stderr:
|
ash | 37 SparseArray: ${a[@]#...}
stdout:
stderr:
|
zsh | 38 SparseArray: ${a[@]/pat/rep}
stdout:
stderr:
|
mksh | 38 SparseArray: ${a[@]/pat/rep}
stdout:
stderr:
|
ash | 38 SparseArray: ${a[@]/pat/rep}
stdout:
stderr:
|
bash | 39 SparseArray: ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}
stdout:
['v0', 'v1', 'v5', 'v6', 'v8', 'v9']
['v0 v1 v5 v6 v8 v9']
["'v0'", "'v1'", "'v5'", "'v6'", "'v8'", "'v9'"]
["'v0' 'v1' 'v5' 'v6' 'v8' 'v9'"]
['a', 'a', 'a', 'a', 'a', 'a']
['a a a a a a']
stderr:
|
zsh | 39 SparseArray: ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}
stdout:
stderr:
|
mksh | 39 SparseArray: ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}
stdout:
stderr:
|
ash | 39 SparseArray: ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}
stdout:
stderr:
|
zsh | 40 SparseArray: ${a[@]-unset}, ${a[@]:-empty}, etc.
stdout:
stderr:
|
mksh | 40 SparseArray: ${a[@]-unset}, ${a[@]:-empty}, etc.
stdout:
stderr:
|
ash | 40 SparseArray: ${a[@]-unset}, ${a[@]:-empty}, etc.
stdout:
stderr:
|
zsh | 41 SparseArray: ${a-}
stdout:
stderr:
|
mksh | 41 SparseArray: ${a-}
stdout:
stderr:
|
ash | 41 SparseArray: ${a-}
stdout:
stderr:
|
zsh | 42 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
mksh | 42 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
ash | 42 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
bash | 43 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
zsh | 43 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
mksh | 43 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
ash | 43 SparseArray: compgen -F _set_COMPREPLY
stdout:
stderr:
|
bash | 44 SparseArray (YSH): $[a1 === a2]
stdout:
stderr:
|
zsh | 44 SparseArray (YSH): $[a1 === a2]
stdout:
stderr:
|
mksh | 44 SparseArray (YSH): $[a1 === a2]
stdout:
stderr:
|
ash | 44 SparseArray (YSH): $[a1 === a2]
stdout:
stderr:
|
bash | 45 SparseArray (YSH): append v1 v2... (a)
stdout:
stderr:
|
zsh | 45 SparseArray (YSH): append v1 v2... (a)
stdout:
stderr:
|
mksh | 45 SparseArray (YSH): append v1 v2... (a)
stdout:
stderr:
|
ash | 45 SparseArray (YSH): append v1 v2... (a)
stdout:
stderr:
|
bash | 46 SparseArray (YSH): $[bool(a)]
stdout:
stderr:
|
zsh | 46 SparseArray (YSH): $[bool(a)]
stdout:
stderr:
|
mksh | 46 SparseArray (YSH): $[bool(a)]
stdout:
stderr:
|
ash | 46 SparseArray (YSH): $[bool(a)]
stdout:
stderr:
|
bash | 47 SparseArray: crash dump
stdout:
stderr:
|
zsh | 47 SparseArray: crash dump
stdout:
stderr:
|
mksh | 47 SparseArray: crash dump
stdout:
stderr:
|
ash | 47 SparseArray: crash dump
stdout:
stderr:
|