Results for array.test.sh

statusoshosh_.pyosh_.cc
pass 656524
ok 110
FAIL 0042
total666666
caseoshosh_.pyosh_.ccdescription
0pass pass pass SETUP
1pass pass FAIL "${a[@]}" and "${a[*]}"
details
2pass pass FAIL ${a[@]} and ${a[*]}
details
3pass pass FAIL 4 ways to interpolate empty array
details
4pass pass FAIL empty array
details
5pass pass FAIL Empty array with :-
details
6pass pass FAIL nounset with empty array (design bug, makes it hard to use arrays)
details
7pass pass FAIL local array
details
8pass pass FAIL Command with with word splitting in array
details
9pass pass pass space before ( in array initialization
10pass pass FAIL array over multiple lines
details
11pass pass pass array with invalid token
12pass pass FAIL array with empty string
details
13pass pass FAIL Retrieve index
details
14pass pass FAIL Retrieve out of bounds index
details
15pass pass FAIL Negative index
details
16pass pass pass Negative index and sparse array
17pass pass pass Negative index and sparse array
18pass pass pass Length after unset
19pass pass FAIL Retrieve index that is a variable
details
20pass pass FAIL Retrieve index that is a variable without $
details
21pass pass FAIL Retrieve index that is a command sub
details
22pass pass FAIL Retrieve array indices with ${!a}
details
23pass pass FAIL Retrieve sparse array indices with ${!a}
details
24pass pass FAIL ${!a[1]} is named ref in bash
details
25pass pass pass ${!a} on array is disallowed
26pass pass FAIL All elements unquoted
details
27pass pass FAIL All elements quoted
details
28pass pass FAIL $*
details
29pass pass FAIL "$*"
details
30pass pass FAIL Interpolate array into array
details
31pass pass pass Exporting array doesn't do anything, not even first element
32pass pass pass Arrays can't be used as env bindings
33pass pass FAIL Set element
details
34pass pass FAIL Set element with var ref
details
35pass pass FAIL Set element with array ref
details
36pass pass pass Set array item to array
37pass pass FAIL Slice of array with [@]
details
38pass pass FAIL Negative slice begin
details
39pass pass pass Negative slice length
40pass pass FAIL Slice with arithmetic
details
41pass pass pass Number of elements
42pass pass pass Length of an element
43pass pass pass Iteration
44pass pass FAIL glob within array yields separate elements
details
45pass pass FAIL declare array and then append
details
46pass pass pass Array syntax in wrong place
47ok ok FAIL Single array with :-
detailsdetailsdetails
48pass pass FAIL Stripping a whole array unquoted
details
49pass pass FAIL Stripping a whole array quoted
details
50pass pass pass Multiple subscripts not allowed
51pass pass pass Length op, index op, then transform op is not allowed
52pass pass pass Array subscript not allowed on string
53pass pass FAIL Create a "user" array out of the argv array
details
54pass pass pass Tilde expansion within array
55pass pass pass Brace Expansion within Array
56pass pass FAIL array default
details
57pass pass pass Singleton Array Copy and Assign. OSH can't index strings with ints
58pass pass FAIL declare -a / local -a is empty array
details
59pass pass FAIL Create sparse array
details
60pass pass FAIL Create sparse array implicitly
details
61pass pass FAIL Append sparse arrays
details
62pass pass FAIL Slice of sparse array with [@]
details
63pass pass pass Using an array itself as the index on LHS
64pass pass pass Using an array itself as the index on RHS
65pass pass pass a[$x$y] on LHS and RHS
154 passed, 2 OK, 0 not implemented, 0 BUG, 42 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

osh_.cc1 "${a[@]}" and "${a[*]}"

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2 3', '1 2 3']
stderr:
dumb_alloc:
	gNumNew = 1888
	gNumDelete = 145
	gMemPos = 64928

	gNumMalloc = 88
	gNumFree = 0
	gMemPos2 = 9984
osh_.cc2 ${a[@]} and ${a[*]}

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2', '3', '1', '2', '3']
stderr:
dumb_alloc:
	gNumNew = 1944
	gNumDelete = 157
	gMemPos = 66672

	gNumMalloc = 121
	gNumFree = 0
	gMemPos2 = 10512
osh_.cc3 4 ways to interpolate empty array

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2', '3', '', '4', '5']
stderr:
dumb_alloc:
	gNumNew = 1944
	gNumDelete = 144
	gMemPos = 67744

	gNumMalloc = 124
	gNumFree = 0
	gMemPos2 = 10560
osh_.cc4 empty array

[osh_.cc status] Expected 0, got 255

stdout:
[]
stderr:
dumb_alloc:
	gNumNew = 1791
	gNumDelete = 122
	gMemPos = 62528

	gNumMalloc = 63
	gNumFree = 0
	gMemPos2 = 9584
osh_.cc5 Empty array with :-

[osh_.cc status] Expected 0, got 255

stdout:
['not', 'one', 'not one']
stderr:
dumb_alloc:
	gNumNew = 1874
	gNumDelete = 141
	gMemPos = 64928

	gNumMalloc = 98
	gNumFree = 0
	gMemPos2 = 10144
osh_.cc6 nounset with empty array (design bug, makes it hard to use arrays)

[osh_.cc stdout] Expected '[]\nstatus=0\n', got 'status=-1\n[]\n'

stdout:
status=-1
[]
stderr:
dumb_alloc:
	gNumNew = 2129
	gNumDelete = 178
	gMemPos = 72320

	gNumMalloc = 176
	gNumFree = 0
	gMemPos2 = 11392
osh_.cc7 local array

[osh_.cc status] Expected 0, got 255

stdout:
['1']
stderr:
dumb_alloc:
	gNumNew = 2033
	gNumDelete = 170
	gMemPos = 69904

	gNumMalloc = 96
	gNumFree = 0
	gMemPos2 = 10112
osh_.cc8 Command with with word splitting in array

[osh_.cc stdout] Expected "['1 2', '3', '4']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.opt: cpp/posix.h:74: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.cc10 array over multiple lines

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2 3']
stderr:
dumb_alloc:
	gNumNew = 1865
	gNumDelete = 142
	gMemPos = 64480

	gNumMalloc = 79
	gNumFree = 0
	gMemPos2 = 9840
osh_.cc12 array with empty string

[osh_.cc status] Expected 0, got 255

stdout:
['']
stderr:
dumb_alloc:
	gNumNew = 1818
	gNumDelete = 126
	gMemPos = 63296

	gNumMalloc = 67
	gNumFree = 0
	gMemPos2 = 9648
osh_.cc13 Retrieve index

[osh_.cc status] Expected 0, got 255

stdout:
['2 3']
stderr:
dumb_alloc:
	gNumNew = 1856
	gNumDelete = 133
	gMemPos = 64144

	gNumMalloc = 79
	gNumFree = 0
	gMemPos2 = 9840
osh_.cc14 Retrieve out of bounds index

[osh_.cc status] Expected 0, got 255

stdout:
['']
stderr:
dumb_alloc:
	gNumNew = 1856
	gNumDelete = 133
	gMemPos = 64144

	gNumMalloc = 79
	gNumFree = 0
	gMemPos2 = 9840
osh_.cc15 Negative index

[osh_.cc status] Expected 0, got 255

stdout:
['2 3', '1', '']
stderr:
dumb_alloc:
	gNumNew = 1925
	gNumDelete = 147
	gMemPos = 66272

	gNumMalloc = 98
	gNumFree = 0
	gMemPos2 = 10144
osh_.cc19 Retrieve index that is a variable

[osh_.cc status] Expected 0, got 255

stdout:
['2 3']
stderr:
dumb_alloc:
	gNumNew = 1893
	gNumDelete = 139
	gMemPos = 65024

	gNumMalloc = 85
	gNumFree = 0
	gMemPos2 = 9936
osh_.cc20 Retrieve index that is a variable without $

[osh_.cc status] Expected 0, got 255

stdout:
['2 3']
stderr:
dumb_alloc:
	gNumNew = 1896
	gNumDelete = 139
	gMemPos = 65088

	gNumMalloc = 85
	gNumFree = 0
	gMemPos2 = 9936
osh_.cc21 Retrieve index that is a command sub

[osh_.cc stdout] Expected "['2 3']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
osh_eval.opt: cpp/posix.h:74: Tuple2<int, int> posix::pipe(): Assertion `0' failed.
osh_.cc22 Retrieve array indices with ${!a}

[osh_.cc status] Expected 0, got 255

stdout:
['0', '1']
stderr:
dumb_alloc:
	gNumNew = 1861
	gNumDelete = 137
	gMemPos = 64272

	gNumMalloc = 82
	gNumFree = 0
	gMemPos2 = 9888
osh_.cc23 Retrieve sparse array indices with ${!a}

[osh_.cc status] Expected 0, got 255

stdout:
['99']
stderr:
dumb_alloc:
	gNumNew = 1844
	gNumDelete = 137
	gMemPos = 65872

	gNumMalloc = 72
	gNumFree = 0
	gMemPos2 = 9728
osh_.cc24 ${!a[1]} is named ref in bash

[osh_.cc status] Expected 0, got 255

stdout:
['bar']
stderr:
dumb_alloc:
	gNumNew = 1931
	gNumDelete = 150
	gMemPos = 65984

	gNumMalloc = 98
	gNumFree = 0
	gMemPos2 = 10144
osh_.cc26 All elements unquoted

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2', '3']
stderr:
dumb_alloc:
	gNumNew = 1883
	gNumDelete = 141
	gMemPos = 64976

	gNumMalloc = 96
	gNumFree = 0
	gMemPos2 = 10112
osh_.cc27 All elements quoted

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2 3']
stderr:
dumb_alloc:
	gNumNew = 1856
	gNumDelete = 136
	gMemPos = 64144

	gNumMalloc = 79
	gNumFree = 0
	gMemPos2 = 9840
osh_.cc28 $*

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2', '3']
stderr:
dumb_alloc:
	gNumNew = 1882
	gNumDelete = 141
	gMemPos = 64944

	gNumMalloc = 95
	gNumFree = 0
	gMemPos2 = 10096
osh_.cc29 "$*"

[osh_.cc status] Expected 0, got 255

stdout:
['1 2 3']
stderr:
dumb_alloc:
	gNumNew = 1853
	gNumDelete = 134
	gMemPos = 64080

	gNumMalloc = 79
	gNumFree = 0
	gMemPos2 = 9840
osh_.cc30 Interpolate array into array

[osh_.cc status] Expected 0, got 255

stdout:
['0', '1', '2 3', '4 5']
stderr:
dumb_alloc:
	gNumNew = 1987
	gNumDelete = 164
	gMemPos = 67664

	gNumMalloc = 107
	gNumFree = 0
	gMemPos2 = 10288
osh_.cc33 Set element

[osh_.cc status] Expected 0, got 255

stdout:
['9', '2 3']
stderr:
dumb_alloc:
	gNumNew = 1905
	gNumDelete = 144
	gMemPos = 65328

	gNumMalloc = 90
	gNumFree = 0
	gMemPos2 = 10016
osh_.cc34 Set element with var ref

[osh_.cc status] Expected 0, got 255

stdout:
['9', '2 3']
stderr:
dumb_alloc:
	gNumNew = 1942
	gNumDelete = 150
	gMemPos = 66288

	gNumMalloc = 96
	gNumFree = 0
	gMemPos2 = 10112
osh_.cc35 Set element with array ref

[osh_.cc status] Expected 0, got 255

stdout:
['1', '9']
stderr:
dumb_alloc:
	gNumNew = 2019
	gNumDelete = 159
	gMemPos = 68544

	gNumMalloc = 120
	gNumFree = 0
	gMemPos2 = 10496
osh_.cc37 Slice of array with [@]

[osh_.cc status] Expected 0, got 255

stdout:
['2', '3']
stderr:
dumb_alloc:
	gNumNew = 1904
	gNumDelete = 141
	gMemPos = 65344

	gNumMalloc = 96
	gNumFree = 0
	gMemPos2 = 10112
osh_.cc38 Negative slice begin

[osh_.cc status] Expected 0, got 255

stdout:
['2', '3', '4', '5']
stderr:
dumb_alloc:
	gNumNew = 1957
	gNumDelete = 151
	gMemPos = 66880

	gNumMalloc = 114
	gNumFree = 0
	gMemPos2 = 10400
osh_.cc40 Slice with arithmetic

[osh_.cc status] Expected 0, got 255

stdout:
['2', '3']
stderr:
dumb_alloc:
	gNumNew = 1944
	gNumDelete = 147
	gMemPos = 66288

	gNumMalloc = 102
	gNumFree = 0
	gMemPos2 = 10208
osh_.cc44 glob within array yields separate elements

[osh_.cc status] Expected 0, got 255

stdout:
['_tmp/y.Y', '_tmp/yy.Y']
stderr:
dumb_alloc:
	gNumNew = 2063
	gNumDelete = 180
	gMemPos = 70384

	gNumMalloc = 175
	gNumFree = 0
	gMemPos2 = 11392
osh_.cc45 declare array and then append

[osh_.cc status] Expected 0, got 255

stdout:
['a', 'b', 'c']
stderr:
dumb_alloc:
	gNumNew = 2052
	gNumDelete = 169
	gMemPos = 69648

	gNumMalloc = 104
	gNumFree = 0
	gMemPos2 = 10240
osh47 Single array with :-

stdout:
['x', '']
stderr:
osh_.py47 Single array with :-

stdout:
['x', '']
stderr:
osh_.cc47 Single array with :-

[osh_.cc status] Expected 0, got 255

stdout:
['x', '']
stderr:
dumb_alloc:
	gNumNew = 1877
	gNumDelete = 134
	gMemPos = 64784

	gNumMalloc = 87
	gNumFree = 0
	gMemPos2 = 9968
osh_.cc48 Stripping a whole array unquoted

[osh_.cc status] Expected 0, got 255

stdout:
['foo', 'sp', 'ace.h', 'bar']
stderr:
dumb_alloc:
	gNumNew = 1986
	gNumDelete = 167
	gMemPos = 67840

	gNumMalloc = 150
	gNumFree = 0
	gMemPos2 = 11008
osh_.cc49 Stripping a whole array quoted

[osh_.cc status] Expected 0, got 255

stdout:
['foo', 'sp ace.h', 'bar']
stderr:
dumb_alloc:
	gNumNew = 1917
	gNumDelete = 152
	gMemPos = 65648

	gNumMalloc = 101
	gNumFree = 0
	gMemPos2 = 10192
osh_.cc53 Create a "user" array out of the argv array

[osh_.cc status] Expected 0, got 255

stdout:
['x y', 'z', 'a b', 'c']
stderr:
dumb_alloc:
	gNumNew = 2136
	gNumDelete = 192
	gMemPos = 72000

	gNumMalloc = 130
	gNumFree = 0
	gMemPos2 = 10656
osh_.cc56 array default

[osh_.cc status] Expected 0, got 255

stdout:
['1 2', '3']
stderr:
dumb_alloc:
	gNumNew = 1867
	gNumDelete = 139
	gMemPos = 64400

	gNumMalloc = 81
	gNumFree = 0
	gMemPos2 = 9872
osh_.cc58 declare -a / local -a is empty array

[osh_.cc stdout] Expected "[]\n['x']\n[]\n['x']\n", got "[]\n[]\n['x']\n['x']\n"
[osh_.cc status] Expected 0, got 255

stdout:
[]
[]
['x']
['x']
stderr:
dumb_alloc:
	gNumNew = 2512
	gNumDelete = 256
	gMemPos = 84176

	gNumMalloc = 214
	gNumFree = 0
	gMemPos2 = 12000
osh_.cc59 Create sparse array

[osh_.cc stdout] Expected "len=1\n['1']\nunset=\nlen-of-unset=0\n", got "len=1\nunset=\nlen-of-unset=0\n['1']\n"

stdout:
len=1
unset=
len-of-unset=0
['1']
stderr:
dumb_alloc:
	gNumNew = 2289
	gNumDelete = 217
	gMemPos = 78912

	gNumMalloc = 227
	gNumFree = 0
	gMemPos2 = 12224
osh_.cc60 Create sparse array implicitly

[osh_.cc stdout] Expected "len=1\n['1']\nunset=\nlen-of-unset=0\n", got "len=1\nunset=\nlen-of-unset=0\n['1']\n"

stdout:
len=1
unset=
len-of-unset=0
['1']
stderr:
dumb_alloc:
	gNumNew = 2251
	gNumDelete = 207
	gMemPos = 77504

	gNumMalloc = 223
	gNumFree = 0
	gMemPos2 = 12160
osh_.cc61 Append sparse arrays

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2', '3']
['1', '2', '3']
stderr:
dumb_alloc:
	gNumNew = 2207
	gNumDelete = 207
	gMemPos = 79872

	gNumMalloc = 154
	gNumFree = 0
	gMemPos2 = 11040
osh_.cc62 Slice of sparse array with [@]

[osh_.cc status] Expected 0, got 255

stdout:
['1', '2']
stderr:
dumb_alloc:
	gNumNew = 1896
	gNumDelete = 138
	gMemPos = 67504

	gNumMalloc = 84
	gNumFree = 0
	gMemPos2 = 9920