var-op-test () { run-file var-op-test "$@" } 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
108 passed, 10 OK, 12 not implemented, 10 BUG, 0 failed, 0 timeouts, 0 cases skipped
dash | 0 Lazy Evaluation of Alternative stdout: x 0stderr: dash: 5: arithmetic expression: expecting primary: "i++" |
zsh | 3 Unquoted with array as default value stdout: ['Xx1 2 3 4xX'] ['Xx1 2 3 4xX']stderr: |
osh | 3 Unquoted with array as default value stdout: ['Xx1 2', '3 4xX'] ['Xx1', '2', '3', '4xX']stderr: |
bash-4 | 4 Quoted with array as default value stdout: ['Xx1', '2', '3', '4xX'] ['Xx1 2 3 4xX']stderr: |
osh | 4 Quoted with array as default value stdout: ['Xx1 2', '3 4xX'] ['Xx1 2 3 4xX']stderr: |
zsh | 5 Assign default with array stdout: ['Xx1 2 3 4xX'] ['x1 2 3 4x']stderr: |
osh | 5 Assign default with array stdout: ['Xx1 2', '3 4xX'] ['x1 2 3 4x']stderr: |
bash-4 | 12 "${array[@]} with set -u (bash is outlier) stdout: empty // undefined //stderr: |
dash | 12 "${array[@]} with set -u (bash is outlier) stdout: stderr: |
mksh | 12 "${array[@]} with set -u (bash is outlier) stdout: stderr: mksh: <stdin>[8]: empty[@]: parameter not set |
dash | 13 "${undefined[@]+foo}" and "${undefined[@]:+foo}", with set -u stdout: stderr: |
dash | 14 "${a[@]+foo}" and "${a[@]:+foo}" - operators are equivalent on arrays? stdout: stderr: |
mksh | 14 "${a[@]+foo}" and "${a[@]:+foo}" - operators are equivalent on arrays? stdout: + // +: // + // +: // + /foo/ +: // + /foo/ +: /foo/stderr: |
zsh | 14 "${a[@]+foo}" and "${a[@]:+foo}" - operators are equivalent on arrays? stdout: + // +: // + /foo/ +: // + /foo/ +: /foo/ + /foo/ +: /foo/stderr: |
dash | 15 Nix idiom ${!hooksSlice+"${!hooksSlice}"} - was workaround for obsolete bash 4.3 bug stdout: stderr: |
mksh | 15 Nix idiom ${!hooksSlice+"${!hooksSlice}"} - was workaround for obsolete bash 4.3 bug stdout: stderr: |
zsh | 15 Nix idiom ${!hooksSlice+"${!hooksSlice}"} - was workaround for obsolete bash 4.3 bug stdout: stderr: |
dash | 17 array and - and + stdout: stderr: |
zsh | 17 array and - and + stdout: empty= a1=stderr: zsh: command not found: shopt zsh: no matches found: a1[0]=minus |
dash | 18 $@ and - and + stdout: argv= argv=plus argv=minus argv=stderr: |
zsh | 18 $@ and - and + stdout: argv= argv=plus argv=minus argv=stderr: |
dash | 19 assoc array and - and + stdout: stderr: |
mksh | 19 assoc array and - and + stdout: stderr: |
zsh | 19 assoc array and - and + stdout: empty= empty=plus assoc=minus assoc= --- empty=minus empty= assoc=minus assoc=stderr: zsh: no matches found: [k]=v |
dash | 20 Error when empty stdout: stderr: dash: 2: empty: is empty |
dash | 21 Error when unset stdout: stderr: dash: 1: unset: is empty |
dash | 24 array ${arr[0]=x} stdout: stderr: dash: 1: Syntax error: "(" unexpected |
zsh | 24 array ${arr[0]=x} stdout: 0stderr: zsh: arr: assignment to invalid subscript range |
dash | 25 assoc array ${arr["k"]=x} stdout: stderr: dash: 1: Syntax error: "(" unexpected |
mksh | 25 assoc array ${arr["k"]=x} stdout: stderr: mksh: <stdin>[1]: syntax error: '(' unexpected |
mksh | 27 "\e" as arg stdout: stderr: |
zsh | 27 "\e" as arg stdout: stderr: |