Results for array-sparse.test.sh

statusbashmkshosh
pass 22640
ok 1150
N-I 7290
total404040
casebashmkshoshdescription
0N-I N-I pass Performance demo
detailsdetails
1pass pass pass test length
2ok ok pass test "declare -p sp"
detailsdetails
3pass ok pass +=
details
4pass ok pass a[i]=v
details
5pass N-I pass Negative index with a[i]=v
details
6pass N-I pass a[i]=v with BigInt
details
7ok N-I pass Negative out-of-bound index with a[i]=v (1/2)
detailsdetails
8ok N-I pass Negative out-of-bound index with a[i]=v (2/2)
detailsdetails
9pass ok pass xtrace a+=()
details
10ok ok pass unset -v a[i]
detailsdetails
11ok N-I pass unset -v a[i] with out-of-bound negative index
detailsdetails
12ok N-I pass unset -v a[i] for max index
detailsdetails
13pass N-I pass [[ -v a[i] ]]
details
14ok N-I pass [[ -v a[i] ]] with invalid negative index
detailsdetails
15pass pass pass ((sp[i])) and ((sp[i]++))
16ok N-I pass ((sp[i])) and ((sp[i]++)) with invalid negative index
detailsdetails
17pass N-I pass ${sp[i]}
details
18ok N-I pass ${sp[i]} with negative invalid index
detailsdetails
19pass N-I pass ${a[@]:offset:length}
details
20pass N-I pass ${@:offset:length}
details
21pass N-I pass ${a[@]:BigInt}
details
22pass pass pass ${a[@]}
23pass N-I pass ${a[@]#...}
details
24pass N-I pass ${a[@]/pat/rep}
details
25ok N-I pass ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}
detailsdetails
26pass pass pass ${a[@]-unset}, ${a[@]:-empty}, etc.
27pass pass pass ${a-}
28pass N-I pass ${!a[0]}
details
29pass N-I pass ${!a[@]}
details
30pass pass pass "${a[*]}"
31pass N-I pass compgen -F _set_COMPREPLY
details
32N-I N-I pass compadjust
detailsdetails
33N-I N-I pass (YSH) @[sp] and @sp
detailsdetails
34N-I N-I pass (YSH) $[a1 === a2]
detailsdetails
35N-I N-I pass (YSH) append v1 v2... (a)
detailsdetails
36N-I N-I pass (YSH) $[bool(a)]
detailsdetails
37N-I N-I pass crash dump
detailsdetails
38ok N-I pass Regression: a[-1]=1
detailsdetails
39pass N-I pass Initializing indexed array with ([index]=value)
details
68 passed, 16 OK, 36 not implemented, 0 BUG, 0 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

bash0 Performance demo

stdout:
stderr: 
mksh0 Performance demo

stdout:
stderr: 
bash2 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:
mksh2 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:
mksh3 +=

stdout:
set -A sp1
typeset sp1[10]=a
typeset sp1[20]=b
typeset sp1[99]=c
set -A sp1
typeset sp1[10]=a
typeset sp1[20]=b
typeset sp1[99]=c
typeset sp1[100]=1
typeset sp1[101]=2
typeset sp1[102]=3
stderr:
mksh4 a[i]=v

stdout:
set -A sp1
typeset sp1[10]=a
typeset sp1[20]=b
typeset sp1[30]=c
set -A sp1
typeset sp1[10]=X
typeset sp1[20]=b
typeset sp1[25]=Y
typeset sp1[30]=c
typeset sp1[90]=Z
stderr:
mksh5 Negative index with a[i]=v

stdout:
stderr: 
mksh6 a[i]=v with BigInt

stdout:
stderr: 
bash7 Negative out-of-bound index with a[i]=v (1/2)

stdout:
declare -a sp1=([9]="x")
stderr:
bash: line 4: sp1[-11]: bad array subscript
mksh7 Negative out-of-bound index with a[i]=v (1/2)

stdout:
stderr: 
bash8 Negative out-of-bound index with a[i]=v (2/2)

stdout:
declare -a sp1=([9]="x")
stderr:
bash: line 5: sp1[-21]: bad array subscript
mksh8 Negative out-of-bound index with a[i]=v (2/2)

stdout:
stderr: 
mksh9 xtrace a+=()

stdout:
stderr: 
+ set -A sp1+ -- 2
bash10 unset -v a[i]

stdout:
declare -a a=([0]="1" [1]="2" [2]="3" [3]="4" [4]="5" [5]="6" [6]="7" [7]="8" [8]="9")
declare -a a=([0]="1" [2]="3" [3]="4" [4]="5" [5]="6" [6]="7" [7]="8" [8]="9")
declare -a a=([0]="1" [2]="3" [3]="4" [4]="5" [5]="6" [6]="7" [7]="8" [8]="9")
declare -a a=([2]="3" [3]="4" [4]="5" [5]="6" [6]="7" [7]="8" [8]="9")
stderr:
mksh10 unset -v a[i]

stdout:
set -A a
typeset a[0]=1
typeset a[1]=2
typeset a[2]=3
typeset a[3]=4
typeset a[4]=5
typeset a[5]=6
typeset a[6]=7
typeset a[7]=8
typeset a[8]=9
set -A a
typeset a[0]=1
typeset a[2]=3
typeset a[3]=4
typeset a[4]=5
typeset a[5]=6
typeset a[6]=7
typeset a[7]=8
typeset a[8]=9
set -A a
typeset a[0]=1
typeset a[2]=3
typeset a[3]=4
typeset a[4]=5
typeset a[5]=6
typeset a[6]=7
typeset a[7]=8
typeset a[8]=9
set -A a
typeset a[2]=3
typeset a[3]=4
typeset a[4]=5
typeset a[5]=6
typeset a[6]=7
typeset a[7]=8
typeset a[8]=9
stderr:
bash11 unset -v a[i] with out-of-bound negative index

stdout:
stderr: 
bash: line 5: unset: [-2]: bad array subscript
bash: line 6: unset: [-3]: bad array subscript
mksh11 unset -v a[i] with out-of-bound negative index

stdout:
stderr: 
bash12 unset -v a[i] for max index

stdout:
declare -a a=([0]="1" [1]="2" [2]="3" [3]="4" [4]="5" [5]="6" [6]="7" [7]="x")
declare -a a=([0]="1" [1]="2" [2]="3" [3]="4" [4]="5" [5]="6" [6]="x")
stderr:
mksh12 unset -v a[i] for max index

stdout:
stderr: 
mksh13 [[ -v a[i] ]]

stdout:
stderr: 
bash14 [[ -v a[i] ]] with invalid negative index

stdout:
1 (expect 1)
1 (expect 1)
1 (expect 1)
stderr:
bash: line 4: sp1: bad array subscript
bash: line 6: sp2: bad array subscript
bash: line 9: sp3: bad array subscript
mksh14 [[ -v a[i] ]] with invalid negative index

stdout:
stderr: 
bash16 ((sp[i])) and ((sp[i]++)) with invalid negative index

stdout:
0
stderr:
bash: line 6: a: bad array subscript
mksh16 ((sp[i])) and ((sp[i]++)) with invalid negative index

stdout:
stderr: 
mksh17 ${sp[i]}

stdout:
stderr: 
bash18 ${sp[i]} with negative invalid index

stdout:
sp[-10]: ''.
sp[-11]: ''.
sp[-19]: ''.
stderr:
bash: line 8: sp: bad array subscript
bash: line 9: sp: bad array subscript
bash: line 10: sp: bad array subscript
mksh18 ${sp[i]} with negative invalid index

stdout:
stderr: 
mksh19 ${a[@]:offset:length}

stdout:
stderr: 
mksh20 ${@:offset:length}

stdout:
stderr: 
mksh21 ${a[@]:BigInt}

stdout:
stderr: 
mksh23 ${a[@]#...}

stdout:
stderr: 
mksh24 ${a[@]/pat/rep}

stdout:
stderr: 
bash25 ${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:
mksh25 ${a[@]@P}, ${a[@]@Q}, and ${a[@]@a}

stdout:
stderr: 
mksh28 ${!a[0]}

stdout:
stderr: 
mksh29 ${!a[@]}

stdout:
stderr: 
mksh31 compgen -F _set_COMPREPLY

stdout:
stderr: 
bash32 compadjust

stdout:
stderr: 
mksh32 compadjust

stdout:
stderr: 
bash33 (YSH) @[sp] and @sp

stdout:
stderr: 
mksh33 (YSH) @[sp] and @sp

stdout:
stderr: 
bash34 (YSH) $[a1 === a2]

stdout:
stderr: 
mksh34 (YSH) $[a1 === a2]

stdout:
stderr: 
bash35 (YSH) append v1 v2... (a)

stdout:
stderr: 
mksh35 (YSH) append v1 v2... (a)

stdout:
stderr: 
bash36 (YSH) $[bool(a)]

stdout:
stderr: 
mksh36 (YSH) $[bool(a)]

stdout:
stderr: 
bash37 crash dump

stdout:
stderr: 
mksh37 crash dump

stdout:
stderr: 
bash38 Regression: a[-1]=1

stdout:
stderr: 
bash: line 3: a[-1]: bad array subscript
mksh38 Regression: a[-1]=1

stdout:
stderr: 
mksh39 Initializing indexed array with ([index]=value)

stdout:
stderr: