array-basic () { run-file array-basic "$@" } run-file () { local spec_name=$1; shift; sh-spec spec/$spec_name.test.sh --compare-shells --oils-bin-dir $PWD/bin "$@" }
spec test index / oilshell.org
| status | bash | mksh | zsh | osh | |
| pass | 5 | 5 | 2 | 5 | |
| BUG | 0 | 0 | 3 | 0 | |
| total | 5 | 5 | 5 | 5 | |
| case | bash | mksh | zsh | osh | description | 
| 0 | pass | pass | pass | pass | "${a[@]}" and "${a[*]}" | 
| 1 | pass | pass | BUG | pass | ${a[@]} and ${a[*]} | 
| details | |||||
| 2 | pass | pass | BUG | pass | 4 ways to interpolate empty array | 
| details | |||||
| 3 | pass | pass | pass | pass | empty array | 
| 4 | pass | pass | BUG | pass | Empty array with :- | 
| details | 
17 passed, 0 OK, 0 not implemented, 3 BUG, 0 failed, 0 timeouts, 0 cases skipped
| zsh | 1 ${a[@]} and ${a[*]} stdout: ['1', '2 3', '1', '2 3']stderr:  | 
| zsh | 2 4 ways to interpolate empty array stdout: ['1', '', '2', '3', '', '4', '5']stderr:  | 
| zsh | 4 Empty array with :- stdout: ['not one', 'not one']stderr:  |