Results for word-split.test.sh

statusbashmkshkshtoyshsushbrushosh
pass 47464729453345
ok 3300000
N-I 0200000
BUG 2100000
FAIL 005237197
total52525252525252
casebashmkshkshtoyshsushbrushoshdescription
0pass pass pass FAIL pass pass pass IFS is scoped
details
1pass pass pass pass pass pass pass Tilde sub is not split, but var sub is
2pass pass pass pass pass pass pass Word splitting
3pass pass pass pass pass pass pass Word splitting 2
4pass pass pass pass pass pass pass $*
5pass pass pass pass pass pass pass "$*"
6pass pass pass pass pass pass pass $@
7pass pass pass pass pass pass pass "$@"
8pass pass pass FAIL pass pass pass empty argv
details
9pass pass pass FAIL pass FAIL pass $* with empty IFS
detailsdetails
10pass pass pass FAIL pass pass pass Word elision with space
details
11pass pass pass pass pass FAIL pass Word elision with non-whitespace IFS
details
12pass pass pass pass pass FAIL pass Leading/trailing word elision with non-whitespace IFS
details
13pass pass pass FAIL pass FAIL pass Leading ' ' vs leading ' _ '
detailsdetails
14pass pass pass pass pass FAIL pass Multiple non-whitespace IFS chars.
details
15pass pass pass pass pass FAIL pass IFS with whitespace and non-whitepace.
details
16pass pass pass pass pass pass pass empty $@ and $* is elided
17pass pass pass pass pass pass pass unquoted empty arg is elided
18pass pass pass FAIL pass pass pass unquoted whitespace arg is elided
details
19pass pass pass FAIL pass pass pass empty literals are not elided
details
20pass pass pass pass pass pass pass no splitting when IFS is empty
21pass pass pass FAIL pass FAIL pass default value can yield multiple words
detailsdetails
22pass pass pass FAIL pass FAIL pass default value can yield multiple words with part joining
detailsdetails
23pass pass pass FAIL FAIL FAIL pass default value with unquoted IFS char
detailsdetailsdetails
24pass pass pass pass pass pass pass IFS empty doesn't do splitting
25pass pass pass FAIL pass pass pass IFS unset behaves like $' \t\n'
details
26pass pass pass pass FAIL pass FAIL IFS='\'
detailsdetails
27pass pass pass pass FAIL FAIL FAIL IFS='\ '
detailsdetailsdetails
28pass pass pass pass pass FAIL pass IFS characters are glob metacharacters
details
29pass pass pass pass pass pass pass Trailing space
30pass pass pass pass pass FAIL pass Empty IFS (regression for bug)
details
31pass pass pass pass pass pass pass Unset IFS (regression for bug)
32pass pass pass pass pass FAIL pass IFS=o (regression for bug)
details
33pass pass pass FAIL pass pass pass IFS and joining arrays
details
34pass pass pass FAIL pass FAIL FAIL IFS and joining arrays by assignments
detailsdetailsdetails
35pass pass pass pass pass pass pass TODO
36pass pass pass FAIL pass pass pass IFS='' with $@ and $* (bug #627)
details
37pass pass pass FAIL pass pass pass IFS='' with $@ and $* and printf (bug #627)
details
38pass pass pass FAIL pass pass pass IFS='' with ${a[@]} and ${a[*]} (bug #627)
details
39BUG N-I FAIL FAIL FAIL pass pass IFS='' with ${!prefix@} and ${!prefix*} (bug #627)
detailsdetailsdetailsdetailsdetails
40BUG N-I pass FAIL pass pass pass IFS='' with ${!a[@]} and ${!a[*]} (bug #627)
detailsdetailsdetails
41pass pass pass pass pass FAIL FAIL Bug #628 split on : with : in literal word
detailsdetails
42pass pass pass pass pass pass pass Bug #698, similar crash
43pass pass pass pass pass pass FAIL Bug #1664, \\ with noglob
details
44pass pass pass pass pass pass pass Empty IFS bug #2141 (from pnut)
45pass BUG FAIL pass pass FAIL FAIL Unicode in IFS
detailsdetailsdetailsdetails
46pass pass pass FAIL pass FAIL pass 4 x 3 table: (default IFS, IFS='', IFS=zx) x ( $* "$*" $@ "$@" )
detailsdetails
47pass pass pass FAIL pass FAIL pass 4 x 3 table - with for loop
detailsdetails
48ok ok FAIL FAIL FAIL FAIL pass IFS=x and '' and $@ - same bug as spec/toysh-posix case #12
detailsdetailsdetailsdetailsdetailsdetails
49ok ok FAIL FAIL FAIL pass pass IFS=x and '' and $@ (#2)
detailsdetailsdetailsdetailsdetails
50ok ok FAIL pass FAIL pass pass IFS=x and '' and $@ (#3)
detailsdetailsdetailsdetails
51pass pass pass FAIL pass pass FAIL ""$A"" - empty string on both sides - derived from spec/toysh-posix #15
detailsdetails
292 passed, 6 OK, 2 not implemented, 3 BUG, 61 failed, 0 timeouts, 0 cases skipped
7 failed under osh

Details on runs that didn't PASS

toysh0 IFS is scoped

[toysh stdout] Expected "['ab', 'd']\n['a', 'cd']\n", got "['a', 'cd']\n['a', 'cd']\n"

stdout:
['a', 'cd']
['a', 'cd']
stderr:
toysh8 empty argv

[toysh stdout] Expected "['1', '2', '3', '', '4', '5']\n", got "['1', '', '2', '3', '', '4', '5']\n"

stdout:
['1', '', '2', '3', '', '4', '5']
stderr:
toysh9 $* with empty IFS

[toysh stdout] Expected "['1 2', '3 4']\n['1 23 4']\n", got "[]\n['']\n"

stdout:
[]
['']
stderr:
set: bad --
brush9 $* with empty IFS

[brush stdout] Expected "['1 2', '3 4']\n['1 23 4']\n", got "['1 2', '3 4']\n['1 2 3 4']\n"

stdout:
['1 2', '3  4']
['1 2 3  4']
stderr:
toysh10 Word elision with space

[toysh stdout] Expected '[]\n', got "['']\n"

stdout:
['']
stderr:
brush11 Word elision with non-whitespace IFS

[brush stdout] Expected "['']\n[' ']\n[]\n", got "[]\n[' ']\n[]\n"

stdout:
[]
[' ']
[]
stderr:
brush12 Leading/trailing word elision with non-whitespace IFS

[brush stdout] Expected "['', 'a', 'b']\n", got "['a', 'b']\n"

stdout:
['a', 'b']
stderr:
toysh13 Leading ' ' vs leading ' _ '

[toysh stdout] Expected "['', 'a', 'b']\n['a', 'b']\n", got "['', 'a', 'b']\n['', 'a', 'b']\n"

stdout:
['', 'a', 'b']
['', 'a', 'b']
stderr:
brush13 Leading ' ' vs leading ' _ '

[brush stdout] Expected "['', 'a', 'b']\n['a', 'b']\n", got "['a', 'b']\n['a', 'b']\n"

stdout:
['a', 'b']
['a', 'b']
stderr:
brush14 Multiple non-whitespace IFS chars.

[brush stdout] Expected "['a', '', 'b', '', '', 'c', 'd']\n", got "['a', 'b', 'c', 'd']\n"

stdout:
['a', 'b', 'c', 'd']
stderr:
brush15 IFS with whitespace and non-whitepace.

[brush stdout] Expected "['a', 'b', '', '', 'c', 'd', 'e']\n", got "['a', 'b', 'c', 'd', 'e']\n"

stdout:
['a', 'b', 'c', 'd', 'e']
stderr:
toysh18 unquoted whitespace arg is elided

[toysh stdout] Expected "['1', '2']\n", got "['1', '', '2']\n"

stdout:
['1', '', '2']
stderr:
toysh19 empty literals are not elided

[toysh stdout] Expected "['1', '', '2']\n", got "['1', '', '', '2']\n"

stdout:
['1', '', '', '2']
stderr:
toysh21 default value can yield multiple words

[toysh stdout] Expected "['1', '2 3', '4 5', '6']\n", got '[\'1\', \'"2\', \'3"\', \'"4\', \'5"\', \'6\']\n'

stdout:
['1', '"2', '3"', '"4', '5"', '6']
stderr:
brush21 default value can yield multiple words

[brush stdout] Expected "['1', '2 3', '4 5', '6']\n", got "['1', '2', '3', '4', '5', '6']\n"

stdout:
['1', '2', '3', '4', '5', '6']
stderr:
toysh22 default value can yield multiple words with part joining

[toysh stdout] Expected "['12 3', '4 56']\n", got '[\'1"2\', \'3"\', \'"4\', \'5"6\']\n'

stdout:
['1"2', '3"', '"4', '5"6']
stderr:
brush22 default value can yield multiple words with part joining

[brush stdout] Expected "['12 3', '4 56']\n", got "['12', '3', '4', '56']\n"

stdout:
['12', '3', '4', '56']
stderr:
toysh23 default value with unquoted IFS char

[toysh stdout] Expected "['12_3x', 'x4_56']\n", got '[\'1"2\', \'3"x\', \'x"4\', \'5"6\']\n'

stdout:
['1"2', '3"x', 'x"4', '5"6']
stderr:
sush23 default value with unquoted IFS char

[sush stdout] Expected "['12_3x', 'x4_56']\n", got "['12_3x_x4_56']\n"

stdout:
['12_3x_x4_56']
stderr:
brush23 default value with unquoted IFS char

[brush stdout] Expected "['12_3x', 'x4_56']\n", got "['12', '3x', 'x4', '56']\n"

stdout:
['12', '3x', 'x4', '56']
stderr:
toysh25 IFS unset behaves like $' \t\n'

[toysh stdout] Expected "['a', 'b', 'c']\n", got "['', 'a', 'b', 'c']\n"

stdout:
['', 'a', 'b', 'c']
stderr:
sush26 IFS='\'

[sush stdout] Expected "['a', 'b']\n", got "['a\\\\b']\n"

stdout:
['a\\b']
stderr:
osh26 IFS='\'

[osh stdout] Expected "['a', 'b']\n", got "['a', '', '', '', 'b']\n"

stdout:
['a', '', '', '', 'b']
stderr:
sush27 IFS='\ '

[sush stdout] Expected "['a', 'b', '', 'c', 'd']\n", got "['a\\\\b', 'c', 'd\\\\']\n"

stdout:
['a\\b', 'c', 'd\\']
stderr:
brush27 IFS='\ '

[brush stdout] Expected "['a', 'b', '', 'c', 'd']\n", got "['a', 'b', 'c', 'd']\n"

stdout:
['a', 'b', 'c', 'd']
stderr:
osh27 IFS='\ '

[osh stdout] Expected "['a', 'b', '', 'c', 'd']\n", got "['a', '', '', '', 'b', '', '', '', '', '', '', '', 'c', 'd', '', '', '']\n"

stdout:
['a', '', '', '', 'b', '', '', '', '', '', '', '', 'c', 'd', '', '', '']
stderr:
brush28 IFS characters are glob metacharacters

[brush stdout] Expected "['a', 'b', 'c']\n['', 'x', 'y', 'z']\n['', 'x', 'y', 'z']\n" Got "['a', 'b', 'c']\n['x', 'y', 'z']\n['x', 'y', 'z']\n"

stdout:
['a', 'b', 'c']
['x', 'y', 'z']
['x', 'y', 'z']
stderr:
brush30 Empty IFS (regression for bug)

[brush stdout] Expected '[]\n[abc]\n', got '[]\n[a b c]\n'

stdout:
[]
[a b c]
stderr:
brush32 IFS=o (regression for bug)

[brush stdout] Expected 'hi\n', got ''
[brush status] Expected 0, got 127

stdout:
stderr: 
ech: command not found
toysh33 IFS and joining arrays

[toysh stdout] Expected "['x', 'y z']\n['x', 'y z']\n['x:y z']\n['x', 'y z']\n" Got "['']\n[]\n['']\n[]\n"

stdout:
['']
[]
['']
[]
stderr:
set: bad --
toysh34 IFS and joining arrays by assignments

[toysh stdout] Expected "['x y z']\n['x y z']\n['x:y z']\n['x:y z']\n" Got "['']\n['']\n['']\n['']\n"

stdout:
['']
['']
['']
['']
stderr:
set: bad --
brush34 IFS and joining arrays by assignments

[brush stdout] Expected "['x y z']\n['x y z']\n['x:y z']\n['x:y z']\n" Got "['x y z']\n['x y z']\n['x:y z']\n['x y z']\n"

stdout:
['x y z']
['x y z']
['x:y z']
['x y z']
stderr:
osh34 IFS and joining arrays by assignments

[osh stdout] Expected "['x y z']\n['x y z']\n['x:y z']\n['x:y z']\n" Got "['x y z']\n['x y z']\n['x:y z']\n['x y z']\n"

stdout:
['x y z']
['x y z']
['x:y z']
['x y z']
stderr:
toysh36 IFS='' with $@ and $* (bug #627)

[toysh stdout] Expected "['at', 'a', 'b c']\n['star', 'a', 'b c']\n" Got "['at']\n['star']\n"

stdout:
['at']
['star']
stderr:
set: bad --
toysh37 IFS='' with $@ and $* and printf (bug #627)

[toysh stdout] Expected '[a]\n[b c]\n[a]\n[b c]\n', got '[]\n[]\n'

stdout:
[]
[]
stderr:
set: bad --
toysh38 IFS='' with ${a[@]} and ${a[*]} (bug #627)

[toysh stdout] Expected "['at', 'a', 'b c']\n['star', 'a', 'b c']\n" Got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
bash39 IFS='' with ${!prefix@} and ${!prefix*} (bug #627)

stdout:
['at', 'gLwbmGzS_var1', 'gLwbmGzS_var2']
['star', 'gLwbmGzS_var1gLwbmGzS_var2']
stderr:
mksh39 IFS='' with ${!prefix@} and ${!prefix*} (bug #627)

stdout:
stderr: 
ksh39 IFS='' with ${!prefix@} and ${!prefix*} (bug #627)

[ksh stdout] Expected "['at', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n['star', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n" Got ''
[ksh status] Expected 0, got 1

stdout:
stderr: 
E: ksh: <stdin>[6]: ${!gLwbmGzS_@}: bad substitution
toysh39 IFS='' with ${!prefix@} and ${!prefix*} (bug #627)

[toysh stdout] Expected "['at', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n['star', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n" Got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
sush39 IFS='' with ${!prefix@} and ${!prefix*} (bug #627)

[sush stdout] Expected "['at', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n['star', 'gLwbmGzS_var1', 'gLwbmGzS_var2']\n" Got ''
[sush status] Expected 0, got 1

stdout:
stderr: 
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: `${!gLwbmGzS_@}': bad substitution
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 7: `${!gLwbmGzS_*}': bad substitution
bash40 IFS='' with ${!a[@]} and ${!a[*]} (bug #627)

stdout:
['at', '0', '1', '2']
['star', '0 1 2']
stderr:
mksh40 IFS='' with ${!a[@]} and ${!a[*]} (bug #627)

stdout:
stderr: 
toysh40 IFS='' with ${!a[@]} and ${!a[*]} (bug #627)

[toysh stdout] Expected "['at', '0', '1', '2']\n['star', '0', '1', '2']\n" Got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
brush41 Bug #628 split on : with : in literal word

[brush stdout] Expected "['a', ':b']\n['a', ':']\n---\n['a', 'zb']\n['a', 'z']\n" Got "['a', 'b']\n['a']\n---\n['a', 'b']\n['a']\n"

stdout:
['a', 'b']
['a']
---
['a', 'b']
['a']
stderr:
osh41 Bug #628 split on : with : in literal word

[osh stdout] Expected "['a', ':b']\n['a', ':']\n---\n['a', 'zb']\n['a', 'z']\n" Got "['a', '\\\\', 'b']\n['a', '\\\\']\n---\n['a', '\\\\', 'b']\n['a', '\\\\']\n"

stdout:
['a', '\\', 'b']
['a', '\\']
---
['a', '\\', 'b']
['a', '\\']
stderr:
osh43 Bug #1664, \\ with noglob

[osh stdout] Expected "['[\\\\]_']\n['[\\\\]_']\nnoglob\n['[\\\\]_']\n['[\\\\]_']\n" Got "['[\\\\]_']\n['[\\\\]_']\nnoglob\n['[\\\\\\\\]_']\n['[\\\\]_']\n"

stdout:
['[\\]_']
['[\\]_']
noglob
['[\\\\]_']
['[\\]_']
stderr:
mksh45 Unicode in IFS

stdout:
<>
<>
<x>
stderr:
mksh: <stdin>[1]: setopt: not found
ksh45 Unicode in IFS

[ksh stdout] Expected '<>\n<x>\n', got '<>\n<>\n<x>\n'

stdout:
<>
<>
<x>
stderr:
E: ksh: <stdin>[1]: setopt: inaccessible or not found
brush45 Unicode in IFS

[brush stdout] Expected '<>\n<x>\n', got '<x>\n'

stdout:
<x>
stderr:
setopt: command not found
osh45 Unicode in IFS

[osh stdout] Expected '<>\n<x>\n', got '<>\n<>\n<x>\n'

stdout:
<>
<>
<x>
stderr:
  setopt SH_WORD_SPLIT
  ^~~~~~
[ stdin ]:1: Command 'setopt' not found (OILS-ERR-100)
toysh46 4 x 3 table: (default IFS, IFS='', IFS=zx) x ( $* "$*" $@ "$@" )

[toysh stdout] Expected '[\' $* \', \'a\', \'b\', \'c\']\n[\' "$*" \', \'a b c \']\n[\' $@ \', \'a\', \'b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a bc\']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a bzcz\']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n' Got '[\' $* \']\n[\' "$*" \', \'\']\n[\' $@ \']\n[\' "$@" \', \'\']\n\n[\' $* \']\n[\' "$*" \', \'\']\n[\' $@ \']\n[\' "$@" \', \'\']\n\n[\' $* \']\n[\' "$*" \', \'\']\n[\' $@ \']\n[\' "$@" \', \'\']\n'

stdout:
['  $*  ']
[' "$*" ', '']
['  $@  ']
[' "$@" ', '']

['  $*  ']
[' "$*" ', '']
['  $@  ']
[' "$@" ', '']

['  $*  ']
[' "$*" ', '']
['  $@  ']
[' "$@" ', '']
stderr:
sh: setopt: No such file or directory
set: bad --
brush46 4 x 3 table: (default IFS, IFS='', IFS=zx) x ( $* "$*" $@ "$@" )

[brush stdout] Expected '[\' $* \', \'a\', \'b\', \'c\']\n[\' "$*" \', \'a b c \']\n[\' $@ \', \'a\', \'b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a bc\']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a bzcz\']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n' Got '[\' $* \', \'a\', \'b\', \'c\']\n[\' "$*" \', \'a b c \']\n[\' $@ \', \'a\', \'b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a b c \']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n\n[\' $* \', \'a b\', \'c\']\n[\' "$*" \', \'a bzcz\']\n[\' $@ \', \'a b\', \'c\']\n[\' "$@" \', \'a b\', \'c\', \'\']\n'

stdout:
['  $*  ', 'a', 'b', 'c']
[' "$*" ', 'a b c ']
['  $@  ', 'a', 'b', 'c']
[' "$@" ', 'a b', 'c', '']

['  $*  ', 'a b', 'c']
[' "$*" ', 'a b c ']
['  $@  ', 'a b', 'c']
[' "$@" ', 'a b', 'c', '']

['  $*  ', 'a b', 'c']
[' "$*" ', 'a bzcz']
['  $@  ', 'a b', 'c']
[' "$@" ', 'a b', 'c', '']
stderr:
setopt: command not found
toysh47 4 x 3 table - with for loop

[toysh stdout] Expected ' $* -a- -b- -c-\n "$*" -a b c -\n $@ -a- -b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a bc-\n $@ -a b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a b c -\n $@ -a b- -c-\n "$@" -a b- -c- --\n' Got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
brush47 4 x 3 table - with for loop

[brush stdout] Expected ' $* -a- -b- -c-\n "$*" -a b c -\n $@ -a- -b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a bc-\n $@ -a b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a b c -\n $@ -a b- -c-\n "$@" -a b- -c- --\n' Got ' $* -a- -b- -c-\n "$*" -a b c -\n $@ -a- -b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a b c -\n $@ -a b- -c-\n "$@" -a b- -c- --\n\n $* -a b- -c-\n "$*" -a b c -\n $@ -a b- -c-\n "$@" -a b- -c- --\n'

stdout:
  $*   -a- -b- -c-
 "$*"  -a b c -
  $@   -a- -b- -c-
 "$@"  -a b- -c- --

  $*   -a b- -c-
 "$*"  -a b c -
  $@   -a b- -c-
 "$@"  -a b- -c- --

  $*   -a b- -c-
 "$*"  -a b c -
  $@   -a b- -c-
 "$@"  -a b- -c- --
stderr:
setopt: command not found
bash48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

stdout:
  $*   -one- -- -two-
 "$*"  -one  two-
  $@   -one- -- -two-
 "$@"  -one- -- -two-
['  $*  ', 'one', '', 'two']
[' "$*" ', 'onezztwo']
['  $@  ', 'one', '', 'two']
[' "$@" ', 'one', '', 'two']
stderr:
bash: line 3: setopt: command not found
mksh48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

stdout:
  $*   -one- -- -two-
 "$*"  -one  two-
  $@   -one- -- -two-
 "$@"  -one- -- -two-
['  $*  ', 'one', '', 'two']
[' "$*" ', 'onezztwo']
['  $@  ', 'one', '', 'two']
[' "$@" ', 'one', '', 'two']
stderr:
mksh: <stdin>[3]: setopt: not found
ksh48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

[ksh stdout] Expected ' $* -one- -two-\n "$*" -one two-\n $@ -one- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n' Got ' $* -one- -- -two-\n "$*" -one two-\n $@ -one- -- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n'

stdout:
  $*   -one- -- -two-
 "$*"  -one  two-
  $@   -one- -- -two-
 "$@"  -one- -- -two-
['  $*  ', 'one', '', 'two']
[' "$*" ', 'onezztwo']
['  $@  ', 'one', '', 'two']
[' "$@" ', 'one', '', 'two']
stderr:
E: ksh: <stdin>[3]: setopt: inaccessible or not found
toysh48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

[toysh stdout] Expected ' $* -one- -two-\n "$*" -one two-\n $@ -one- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n' Got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
sush48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

[sush stdout] Expected ' $* -one- -two-\n "$*" -one two-\n $@ -one- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n' Got ' $* -one- -- -two-\n "$*" -one two-\n $@ -one- -- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n'

stdout:
  $*   -one- -- -two-
 "$*"  -one  two-
  $@   -one- -- -two-
 "$@"  -one- -- -two-
['  $*  ', 'one', '', 'two']
[' "$*" ', 'onezztwo']
['  $@  ', 'one', '', 'two']
[' "$@" ', 'one', '', 'two']
stderr:
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: setopt: command not found
brush48 IFS=x and '' and $@ - same bug as spec/toysh-posix case #12

[brush stdout] Expected ' $* -one- -two-\n "$*" -one two-\n $@ -one- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n' Got ' $* -one- -two-\n "$*" -one two-\n $@ -one- -two-\n "$@" -one- -- -two-\n[\' $* \', \'one\', \'two\']\n[\' "$*" \', \'onezztwo\']\n[\' $@ \', \'one\', \'two\']\n[\' "$@" \', \'one\', \'\', \'two\']\n'

stdout:
  $*   -one- -two-
 "$*"  -one two-
  $@   -one- -two-
 "$@"  -one- -- -two-
['  $*  ', 'one', 'two']
[' "$*" ', 'onezztwo']
['  $@  ', 'one', 'two']
[' "$@" ', 'one', '', 'two']
stderr:
setopt: command not found
bash49 IFS=x and '' and $@ (#2)

stdout:
['=', '=']
['=', '=']

['=', '=']
['=', '=']

['=', '', '', '', '=']
['=', '', '', '', '=']
stderr:
bash: line 1: setopt: command not found
mksh49 IFS=x and '' and $@ (#2)

stdout:
['=', '=']
['=', '=']

['=', '=']
['=', '=']

['=', '', '', '', '=']
['=', '', '', '', '=']
stderr:
mksh: <stdin>[1]: setopt: not found
ksh49 IFS=x and '' and $@ (#2)

[ksh stdout] Expected "['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n" Got "['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n\n['=', '', '', '', '=']\n['=', '', '', '', '=']\n"

stdout:
['=', '=']
['=', '=']

['=', '=']
['=', '=']

['=', '', '', '', '=']
['=', '', '', '', '=']
stderr:
E: ksh: <stdin>[1]: setopt: inaccessible or not found
toysh49 IFS=x and '' and $@ (#2)

[toysh stdout] Expected "['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n" Got "['==']\n['==']\n\n['==']\n['==']\n\n['==']\n['==']\n"

stdout:
['==']
['==']

['==']
['==']

['==']
['==']
stderr:
sh: setopt: No such file or directory
set: bad --
sush49 IFS=x and '' and $@ (#2)

[sush stdout] Expected "['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n\n['=', '=']\n['=', '=']\n" Got "['=', '=']\n['=', '=']\n\n['=', '', '', '', '=']\n['==']\n\n['=', '', '', '', '=']\n['=', '', '', '', '=']\n"

stdout:
['=', '=']
['=', '=']

['=', '', '', '', '=']
['==']

['=', '', '', '', '=']
['=', '', '', '', '=']
stderr:
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: setopt: command not found
bash50 IFS=x and '' and $@ (#3)

stdout:
['', '', '', '']
['', '', '']
['', '']
['']
[]
stderr:
bash: line 1: setopt: command not found
mksh50 IFS=x and '' and $@ (#3)

stdout:
['', '', '']
['']
[]
[]
[]
stderr:
mksh: <stdin>[1]: setopt: not found
ksh50 IFS=x and '' and $@ (#3)

[ksh stdout] Expected '[]\n[]\n[]\n[]\n[]\n', got "['', '', '']\n['']\n[]\n[]\n[]\n"

stdout:
['', '', '']
['']
[]
[]
[]
stderr:
E: ksh: <stdin>[1]: setopt: inaccessible or not found
sush50 IFS=x and '' and $@ (#3)

[sush stdout] Expected '[]\n[]\n[]\n[]\n[]\n', got "['', '', '', '']\n['', '', '']\n['', '']\n['']\n[]\n"

stdout:
['', '', '', '']
['', '', '']
['', '']
['']
[]
stderr:
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: setopt: command not found
toysh51 ""$A"" - empty string on both sides - derived from spec/toysh-posix #15

[toysh stdout] Expected "['abc', 'def']\n['', 'abc', 'def', '']\n['abc', 'def']\n['', 'abc', 'def', '']\n\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n" Got "['', 'abc', 'def']\n['', 'abc', 'def', '']\n['', 'abc', 'def']\n['', 'abc', 'def', '']\n\n==\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n\n==\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n"

stdout:
['', 'abc', 'def']
['', 'abc', 'def', '']
['', 'abc', 'def']
['', 'abc', 'def', '']

==
=abc=
=def=

==
=abc=
=def=
==

==
=abc=
=def=

==
=abc=
=def=
==
stderr:
osh51 ""$A"" - empty string on both sides - derived from spec/toysh-posix #15

[osh stdout] Expected "['abc', 'def']\n['', 'abc', 'def', '']\n['abc', 'def']\n['', 'abc', 'def', '']\n\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n\n=abc=\n=def=\n\n==\n=abc=\n=def=\n==\n" Got "['abc', 'def']\n['abc', 'def']\n['abc', 'def']\n['abc', 'def']\n\n=abc=\n=def=\n\n=abc=\n=def=\n\n=abc=\n=def=\n\n=abc=\n=def=\n"

stdout:
['abc', 'def']
['abc', 'def']
['abc', 'def']
['abc', 'def']

=abc=
=def=

=abc=
=def=

=abc=
=def=

=abc=
=def=
stderr: