12 passed, 1 OK, 5 not implemented, 0 BUG, 52 failed, 0 timeouts, 0 cases skipped
bash | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl stdout: status=0 foo=5 status=0 bar=5stderr: bash: line 6: shopt: ignore_flags_not_impl: invalid shell option name |
dash | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [dash stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=127\nfoo=\n\nstatus=127\nbar=\n' stdout: status=127 foo= status=127 bar=stderr: dash: 1: declare: not found dash: 6: shopt: not found dash: 7: declare: not found |
ash | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [ash stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=127\nfoo=\n\nstatus=127\nbar=\n' stdout: status=127 foo= status=127 bar=stderr: ash: declare: not found ash: shopt: not found ash: declare: not found |
zsh | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [zsh stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=0\nfoo=5\n\nstatus=0\nbar=5\n' stdout: status=0 foo=5 status=0 bar=5stderr: zsh: command not found: shopt |
mksh | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [mksh stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=127\nfoo=\n\nstatus=127\nbar=\n' stdout: status=127 foo= status=127 bar=stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[6]: shopt: not found mksh: <stdin>[7]: declare: not found |
ksh | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [ksh stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=127\nfoo=\n\nstatus=127\nbar=\n' stdout: status=127 foo= status=127 bar=stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[6]: shopt: inaccessible or not found E: ksh: <stdin>[7]: declare: inaccessible or not found |
toysh | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [toysh stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=0\nfoo=2+3\n\nstatus=0\nbar=2+3\n' stdout: status=0 foo=2+3 status=0 bar=2+3stderr: sh: shopt: No such file or directory |
sush | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [sush stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=0\nfoo=2+3\n\nstatus=0\nbar=2+3\n' stdout: status=0 foo=2+3 status=0 bar=2+3stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: shopt: ignore_flags_not_impl: not supported yet |
brush | 0 declare -i -l -u errors can be silenced - ignore_flags_not_impl [brush stdout] Expected 'status=2\nfoo=\n\nstatus=0\nbar=2+3\n', got 'status=0\nfoo=0\n\nstatus=0\nbar=0\n' stdout: status=0 foo=0 status=0 bar=0stderr: shopt: ignore_flags_not_impl: invalid shell option name |
dash | 1 declare -i with += [dash stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 ]\n[1 ]\n[x]\n' stdout: [1 ] [1 ] [x]stderr: dash: 1: declare: not found dash: 3: s+= 2 : not found dash: 5: declare: not found dash: 7: i+= 2 : not found dash: 9: declare: not found dash: 11: j+= 2 : not found |
ash | 1 declare -i with += [ash stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 ]\n[1 ]\n[x]\n' stdout: [1 ] [1 ] [x]stderr: ash: declare: not found ash: s+= 2 : not found ash: declare: not found ash: i+= 2 : not found ash: declare: not found ash: j+= 2 : not found |
zsh | 1 declare -i with += [zsh stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 2 ]\n' [zsh status] Expected 0, got 1 stdout: [1 2 ]stderr: zsh: no matches found: [3] |
mksh | 1 declare -i with += [mksh stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 2 ]\n[1 2 ]\n[x 2 ]\n' stdout: [1 2 ] [1 2 ] [x 2 ]stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[5]: declare: not found mksh: <stdin>[9]: declare: not found |
ksh | 1 declare -i with += [ksh stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 2 ]\n[1 2 ]\n[x 2 ]\n' stdout: [1 2 ] [1 2 ] [x 2 ]stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[5]: declare: inaccessible or not found E: ksh: <stdin>[9]: declare: inaccessible or not found |
sush | 1 declare -i with += [sush stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 2 ]\n[0]\n[0]\n' stdout: [1 2 ] [0] [0]stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: '1 ': syntax error: operand expected (error token is "'1 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 7: ' 2 ': syntax error: operand expected (error token is "' 2 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 11: ' 2 ': syntax error: operand expected (error token is "' 2 '") |
brush | 1 declare -i with += [brush stdout] Expected '[1 2 ]\n[3]\n[2]\n', got '[1 2 ]\n[0]\n[0]\n' stdout: [1 2 ] [0] [0]stderr: |
osh | 1 declare -i with += stdout: [1 2 ] [1 2 ] [x 2 ]stderr: declare -i i ^~~~~~~ [ stdin ]:5: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i j ^~~~~~~ [ stdin ]:9: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
dash | 2 declare -i with arithmetic inside strings (Nix, issue 864) [dash stdout] Expected 's=3\nitem=3\n', got 's=1 + 2\n' [dash status] Expected 0, got 2 stdout: s=1 + 2stderr: dash: 1: declare: not found dash: 5: Syntax error: "(" unexpected |
ash | 2 declare -i with arithmetic inside strings (Nix, issue 864) [ash stdout] Expected 's=3\nitem=3\n', got 's=1 + 2\n' [ash status] Expected 0, got 2 stdout: s=1 + 2stderr: ash: declare: not found ash: syntax error: unexpected "(" |
zsh | 2 declare -i with arithmetic inside strings (Nix, issue 864) [zsh stdout] Expected 's=3\nitem=3\n', got 's=3\nitem=2\n' stdout: s=3 item=2stderr: |
mksh | 2 declare -i with arithmetic inside strings (Nix, issue 864) [mksh stdout] Expected 's=3\nitem=3\n', got 's=1 + 2\n' [mksh status] Expected 0, got 1 stdout: s=1 + 2stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[5]: syntax error: '(' unexpected |
ksh | 2 declare -i with arithmetic inside strings (Nix, issue 864) [ksh stdout] Expected 's=3\nitem=3\n', got 's=1 + 2\n' [ksh status] Expected 0, got 1 stdout: s=1 + 2stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[5]: syntax error: unexpected '(' |
toysh | 2 declare -i with arithmetic inside strings (Nix, issue 864) [toysh stdout] Expected 's=3\nitem=3\n', got 's=3\n' [toysh status] Expected 0, got 2 stdout: s=3stderr: main: line 5: sh: syntax error: ) |
sush | 2 declare -i with arithmetic inside strings (Nix, issue 864) [sush stdout] Expected 's=3\nitem=3\n', got 's=0\nitem=0\n' stdout: s=0 item=0stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: '1 + 2': syntax error: operand expected (error token is "'1 + 2'") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 7: 'array[1+1]': syntax error: operand expected (error token is "'array[1+1]'") |
brush | 2 declare -i with arithmetic inside strings (Nix, issue 864) [brush stdout] Expected 's=3\nitem=3\n', got 's=0\nitem=0\n' stdout: s=0 item=0stderr: |
osh | 2 declare -i with arithmetic inside strings (Nix, issue 864) stdout: s=1 + 2 item=array[1+1]stderr: declare -i s ^~~~~~~ [ stdin ]:1: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i item ^~~~~~~ [ stdin ]:6: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
bash | 3 append in arith context [bash stdout] Expected '3|3|2\n', got '||\n' stdout: ||stderr: bash: line 2: ((: s='1 ': syntax error: operand expected (error token is "'1 '") bash: line 3: ((: s+=' 2 ': syntax error: operand expected (error token is "' 2 '") bash: line 5: ((: i='1 ' : syntax error: operand expected (error token is "'1 ' ") bash: line 6: ((: i+=' 2 ' : syntax error: operand expected (error token is "' 2 ' ") bash: line 8: ((: j='x ' : syntax error: operand expected (error token is "'x ' ") bash: line 9: ((: j+=' 2 ' : syntax error: operand expected (error token is "' 2 ' ") |
dash | 3 append in arith context [dash stdout] Expected '3|3|2\n', got '||\n' stdout: ||stderr: dash: 1: declare: not found dash: 3: s+= 2 : not found dash: 4: declare: not found dash: 6: i+= 2 : not found dash: 7: declare: not found dash: 9: j+= 2 : not found |
ash | 3 append in arith context [ash stdout] Expected '3|3|2\n', got '||\n' stdout: ||stderr: ash: declare: not found ash: s+= 2 : not found ash: declare: not found ash: i+= 2 : not found ash: declare: not found ash: j+= 2 : not found |
zsh | 3 append in arith context [zsh stdout] Expected '3|3|2\n', got '|0|0\n' stdout: |0|0stderr: zsh: bad math expression: operand expected at `'1 '' zsh: bad math expression: operand expected at `' 2 '' zsh: bad math expression: operand expected at `'1 ' ' zsh: bad math expression: operand expected at `' 2 ' ' zsh: bad math expression: operand expected at `'x ' ' zsh: bad math expression: operand expected at `' 2 ' ' |
toysh | 3 append in arith context [toysh stdout] Expected '3|3|2\n', got '2|2|2\n' stdout: 2|2|2stderr: main: line 8: sh: =0 main: line 8: sh: bad math: j=x @ 6 |
sush | 3 append in arith context [sush stdout] Expected '3|3|2\n', got '|0|0\n' stdout: |0|0stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: ((: s='1 ': syntax error: operand expected (error token is "'1 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: ((: s+=' 2 ': syntax error: operand expected (error token is "' 2 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 5: ((: i='1 ' : syntax error: operand expected (error token is "'1 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: ((: i+=' 2 ' : syntax error: operand expected (error token is "' 2 '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 8: ((: j='x ' : syntax error: operand expected (error token is "'x '") /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 9: ((: j+=' 2 ' : syntax error: operand expected (error token is "' 2 '") |
dash | 4 declare array vs. string: mixing -a +a and () '' [dash stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got '' [dash status] Expected 0, got 2 stdout: stderr: dash: 1: declare: not found dash: 2: declare: not found dash: 3: declare: not found dash: 4: declare: not found dash: 5: Bad substitution |
ash | 4 declare array vs. string: mixing -a +a and () '' [ash stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got '' [ash status] Expected 0, got 2 stdout: stderr: ash: declare: not found ash: declare: not found ash: declare: not found ash: declare: not found ash: syntax error: bad substitution |
zsh | 4 declare array vs. string: mixing -a +a and () '' [zsh stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got '' [zsh status] Expected 0, got 1 stdout: stderr: declare: xyz3: inconsistent type for assignment |
mksh | 4 declare array vs. string: mixing -a +a and () '' [mksh stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got "['', '']\n" stdout: ['', '']stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[2]: declare: not found mksh: <stdin>[3]: declare: not found mksh: <stdin>[4]: declare: not found |
ksh | 4 declare array vs. string: mixing -a +a and () '' [ksh stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got "['', '']\n" stdout: ['', '']stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[2]: declare: inaccessible or not found E: ksh: <stdin>[3]: declare: inaccessible or not found E: ksh: <stdin>[4]: declare: inaccessible or not found |
toysh | 4 declare array vs. string: mixing -a +a and () '' [toysh stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got '' [toysh status] Expected 0, got 1 stdout: stderr: declare: bad +a declare: bad +a main: line 5: sh: xyz3: [@]}" |
sush | 4 declare array vs. string: mixing -a +a and () '' [sush stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got "['', '']\n" stdout: ['', '']stderr: |
brush | 4 declare array vs. string: mixing -a +a and () '' [brush stdout] Expected "['1', '(2 3)', '4', '5', '6']\n", got "['', '']\n" stdout: ['', '']stderr: |
osh | 4 declare array vs. string: mixing -a +a and () '' stdout: ['', '']stderr: declare +a 'xyz1=1' ^ [ stdin ]:1: 'declare' doesn't accept option +a declare +a 'xyz2=(2 3)' ^ [ stdin ]:2: 'declare' doesn't accept option +a declare -a 'xyz3=4' ^ [ stdin ]:3: 'declare' Got -a but RHS isn't an initializer list declare -a 'xyz4=(5 6)' ^ [ stdin ]:4: 'declare' Got -a but RHS isn't an initializer list |
bash | 5 declare array vs. associative array [bash stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got "['1', '0', 'd']\n['2', 'c', 'a', 'd', 'b']\n" stdout: ['1', '0', 'd'] ['2', 'c', 'a', 'd', 'b']stderr: |
dash | 5 declare array vs. associative array [dash stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got '' [dash status] Expected 0, got 2 stdout: stderr: dash: 1: declare: not found dash: 2: declare: not found dash: 3: Bad substitution |
ash | 5 declare array vs. associative array [ash stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got '' [ash status] Expected 0, got 2 stdout: stderr: ash: declare: not found ash: declare: not found ash: syntax error: bad substitution |
zsh | 5 declare array vs. associative array [zsh stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got '' [zsh status] Expected 0, got 1 stdout: stderr: declare: array: inconsistent type for assignment |
mksh | 5 declare array vs. associative array [mksh stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got "['0']\n['0']\n" stdout: ['0'] ['0']stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[2]: declare: not found |
ksh | 5 declare array vs. associative array [ksh stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got "['0']\n['0']\n" stdout: ['0'] ['0']stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[2]: declare: inaccessible or not found |
toysh | 5 declare array vs. associative array [toysh stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got '' [toysh status] Expected 0, got 1 stdout: stderr: main: line 3: sh: array: [@]}" main: line 4: sh: assoc: [@]}" |
sush | 5 declare array vs. associative array [sush stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got "['0']\n['0']\n" stdout: ['0'] ['0']stderr: |
brush | 5 declare array vs. associative array [brush stdout] Expected "['1', '0', 'd']\n['2', 'a', 'c', 'b', 'd']\n" Got "['0']\n['0']\n" stdout: ['0'] ['0']stderr: |
osh | 5 declare array vs. associative array stdout: ['0'] ['0']stderr: declare -a 'array=([a]=b [c]=d)' ^ [ stdin ]:1: 'declare' Got -a but RHS isn't an initializer list declare -A 'assoc=([a]=b [c]=d)' ^ [ stdin ]:2: 'declare' Got -A but RHS isn't an initializer list |
dash | 6 declare -l -u [dash stdout] Expected 'foo\nFOO\n', got '\n\n' stdout: stderr: dash: 1: declare: not found dash: 2: declare: not found |
ash | 6 declare -l -u [ash stdout] Expected 'foo\nFOO\n', got '\n\n' stdout: stderr: ash: declare: not found ash: declare: not found |
mksh | 6 declare -l -u [mksh stdout] Expected 'foo\nFOO\n', got '\n\n' stdout: stderr: mksh: <stdin>[1]: declare: not found mksh: <stdin>[2]: declare: not found |
ksh | 6 declare -l -u [ksh stdout] Expected 'foo\nFOO\n', got '\n\n' stdout: stderr: E: ksh: <stdin>[1]: declare: inaccessible or not found E: ksh: <stdin>[2]: declare: inaccessible or not found |
toysh | 6 declare -l -u [toysh stdout] Expected 'foo\nFOO\n', got 'FOO\nfoo\n' stdout: FOO foostderr: |
sush | 6 declare -l -u [sush stdout] Expected 'foo\nFOO\n', got 'FOO\nfoo\n' stdout: FOO foostderr: |
osh | 6 declare -l -u stdout: FOO foostderr: declare -l lower=FOO ^~~~~~~ [ stdin ]:1: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -u upper=foo ^~~~~~~ [ stdin ]:2: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) |