Results for var-op-patsub.test.sh

statusbashdashashzshmkshkshtoyshsushbrushosh
pass 2701421192012152026
ok 1021100000
N-I 0000100000
BUG 0066700000
FAIL 0286008161382
total28282828282828282828
casebashdashashzshmkshkshtoyshsushbrushoshdescription
0pass FAIL pass pass pass pass pass pass pass pass Pattern replacement
details
1pass FAIL ok pass BUG FAIL FAIL FAIL FAIL pass Pattern replacement on unset variable
detailsdetailsdetailsdetailsdetailsdetailsdetails
2pass FAIL pass pass pass pass FAIL pass pass pass Global Pattern replacement with /
detailsdetails
3pass FAIL pass pass pass pass pass pass pass pass Left Anchored Pattern replacement with #
details
4pass FAIL BUG pass pass pass pass pass pass pass Right Anchored Pattern replacement with %
detailsdetails
5pass FAIL BUG pass pass pass pass pass pass pass Replace fixed strings
detailsdetails
6pass FAIL pass pass pass pass pass pass pass pass Replace is longest match
details
7pass FAIL pass pass N-I FAIL FAIL pass pass pass Replace char class
detailsdetailsdetailsdetails
8pass FAIL pass pass pass pass FAIL FAIL pass pass Replace hard glob
detailsdetailsdetails
9pass FAIL BUG pass pass pass pass pass pass pass ${v/} is empty search and replacement
detailsdetails
10pass FAIL BUG pass pass pass pass pass pass pass ${v//} is empty search and replacement
detailsdetails
11pass FAIL BUG BUG BUG FAIL FAIL FAIL FAIL pass Confusing unquoted slash matches bash (and ash)
detailsdetailsdetailsdetailsdetailsdetailsdetailsdetails
12pass FAIL BUG BUG BUG FAIL FAIL FAIL FAIL pass Synthesized ${x///} bug (similar to above)
detailsdetailsdetailsdetailsdetailsdetailsdetailsdetails
13pass FAIL pass pass pass pass pass pass pass pass ${v/a} is the same as ${v/a/} -- no replacement string
details
14pass FAIL pass pass pass pass FAIL pass pass pass Replacement with special chars (bug fix)
detailsdetails
15pass FAIL pass BUG BUG FAIL FAIL FAIL pass pass Replace backslash
detailsdetailsdetailsdetailsdetailsdetails
16pass FAIL pass pass pass pass FAIL pass pass pass Replace right ]
detailsdetails
17pass FAIL FAIL BUG pass pass FAIL FAIL pass pass Substitute glob characters in pattern, quoted and unquoted
detailsdetailsdetailsdetailsdetails
18pass FAIL FAIL pass BUG pass pass pass pass pass Substitute one unicode character (UTF-8)
detailsdetailsdetails
19pass FAIL FAIL pass pass pass FAIL FAIL FAIL FAIL When LC_ALL=C, pattern ? doesn't match multibyte character
detailsdetailsdetailsdetailsdetailsdetails
20pass FAIL pass pass pass pass FAIL pass pass pass ${x/^} regression
detailsdetails
21pass FAIL pass pass pass pass FAIL FAIL pass pass \(\) in pattern (regression)
detailsdetailsdetails
22pass FAIL pass pass BUG FAIL FAIL FAIL FAIL pass patsub with single quotes and hyphen in character class (regression)
detailsdetailsdetailsdetailsdetailsdetails
23pass FAIL FAIL pass pass pass pass pass pass FAIL patsub with [^]]
detailsdetailsdetails
24ok FAIL ok ok ok FAIL FAIL FAIL FAIL pass [a-z] Invalid range end is syntax error
detailsdetailsdetailsdetailsdetailsdetailsdetailsdetailsdetails
25pass FAIL FAIL BUG pass pass pass FAIL FAIL pass Pattern is empty $foo$bar -- regression for infinite loop
detailsdetailsdetailsdetailsdetails
26pass FAIL FAIL BUG BUG FAIL FAIL FAIL FAIL pass Chromium from http://www.oilshell.org/blog/2016/11/07.html
detailsdetailsdetailsdetailsdetailsdetailsdetailsdetails
27pass FAIL pass pass pass pass pass FAIL pass pass ${x//~homedir/}
detailsdetails
174 passed, 5 OK, 1 not implemented, 19 BUG, 81 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

dash0 Pattern replacement

[dash stdout] Expected 'abXX\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
dash1 Pattern replacement on unset variable

[dash stdout] Expected '--\nstatus=0\n', got ''
[dash status] Expected 1, got 2

stdout:
stderr: 
dash: 1: Bad substitution
ash1 Pattern replacement on unset variable

stdout:
--
status=0
stderr:
ash: v: parameter not set
mksh1 Pattern replacement on unset variable

stdout:
--
status=0
--
stderr:
ksh1 Pattern replacement on unset variable

[ksh stdout] Expected '--\nstatus=0\n', got '--\nstatus=0\n--\n'
[ksh status] Expected 1, got 0

stdout:
--
status=0
--
stderr:
toysh1 Pattern replacement on unset variable

[toysh stdout] Expected '--\nstatus=0\n', got '\nstatus=0\n\n'
[toysh status] Expected 1, got 0

stdout:
status=0

stderr:
set: bad -o nounset
sush1 Pattern replacement on unset variable

[sush stdout] Expected '--\nstatus=0\n', got '--\nstatus=0\n--\n'
[sush status] Expected 1, got 0

stdout:
--
status=0
--
stderr:
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: set: nounset: invalid option name
brush1 Pattern replacement on unset variable

[brush stdout] Expected '--\nstatus=0\n', got '--\nstatus=0\n--\n'
[brush status] Expected 1, got 0

stdout:
--
status=0
--
stderr:
dash2 Global Pattern replacement with /

[dash stdout] Expected 'yy_xx_xx yy_yy_xx\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
toysh2 Global Pattern replacement with /

[toysh stdout] Expected 'yy_xx_xx yy_yy_xx\n', got 'yy_xx_xx yy_yy_yy_\\\xc7\xa7/\x7f\n'

stdout:
yy_xx_xx yy_yy_yy_\ǧ/
stderr:
dash3 Left Anchored Pattern replacement with #

[dash stdout] Expected 'xx_yy_xx xx_xx_xx\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
dash4 Right Anchored Pattern replacement with %

[dash stdout] Expected 'xx_yy_xx xx_xx_yy\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash4 Right Anchored Pattern replacement with %

stdout:
xx_yy_xx xx_xx_xx
stderr:
dash5 Replace fixed strings

[dash stdout] Expected 'yy_xx yy_yy yy_xx xx_yy\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash5 Replace fixed strings

stdout:
yy_xx yy_yy xx_xx xx_xx
stderr:
dash6 Replace is longest match

[dash stdout] Expected 'begin [] end\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
dash7 Replace char class

[dash stdout] Expected 'yy_yy_yy xx-xx-xx\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
mksh7 Replace char class

stdout:
xx_xx_xx xx_xx_xx
stderr:
ksh7 Replace char class

[ksh stdout] Expected 'yy_yy_yy xx-xx-xx\n', got 'yy_yy_yy --_--_--\n'

stdout:
yy_yy_yy --_--_--
stderr:
toysh7 Replace char class

[toysh stdout] Expected 'yy_yy_yy xx-xx-xx\n', got 'xx_xx_xx xx_xx_xx\n'

stdout:
xx_xx_xx xx_xx_xx
stderr:
dash8 Replace hard glob

[dash stdout] Expected 'aa__cc\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
toysh8 Replace hard glob

[toysh stdout] Expected 'aa__cc\n', got 'aa__\n'

stdout:
aa__
stderr:
sush8 Replace hard glob

[sush stdout] Expected 'aa__cc\n', got '__cc\n'

stdout:
__cc
stderr:
dash9 ${v/} is empty search and replacement

[dash stdout] Expected '-abcde-\nstatus=0\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash9 ${v/} is empty search and replacement

stdout:
-abcde -
status=0
stderr:
dash10 ${v//} is empty search and replacement

[dash stdout] Expected '-a/b/c-\nstatus=0\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash10 ${v//} is empty search and replacement

stdout:
-a/b/c -
status=0
stderr:
dash11 Confusing unquoted slash matches bash (and ash)

[dash stdout] Expected 'c_c\nc_c\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash11 Confusing unquoted slash matches bash (and ash)

stdout:
c_c
/_/ /c
stderr:
zsh11 Confusing unquoted slash matches bash (and ash)

stdout:
/c//c_/c/
/_/
stderr:
mksh11 Confusing unquoted slash matches bash (and ash)

stdout:
/_/
c_c
stderr:
ksh11 Confusing unquoted slash matches bash (and ash)

[ksh stdout] Expected 'c_c\nc_c\n', got '/_/\nc_c\n'

stdout:
/_/
c_c
stderr:
toysh11 Confusing unquoted slash matches bash (and ash)

[toysh stdout] Expected 'c_c\nc_c\n', got '/_/\n/_/\n'

stdout:
/_/
/_/
stderr:
sush11 Confusing unquoted slash matches bash (and ash)

[sush stdout] Expected 'c_c\nc_c\n', got '/_/\nc_c\n'

stdout:
/_/
c_c
stderr:
brush11 Confusing unquoted slash matches bash (and ash)

[brush stdout] Expected 'c_c\nc_c\n', got '/c//c_/c//c\nc_c\n'

stdout:
/c//c_/c//c
c_c
stderr:
dash12 Synthesized ${x///} bug (similar to above)

[dash stdout] Expected 'ambiguous: slash brace } hi\nquoted: slash brace } hi\n' Got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
ash12 Synthesized ${x///} bug (similar to above)

stdout:
ambiguous: slash brace } hi
quoted:    slash / brace } hi
stderr:
zsh12 Synthesized ${x///} bug (similar to above)

stdout:
ambiguous: slash / brace } hi
quoted:    slash / brace } hi
stderr:
mksh12 Synthesized ${x///} bug (similar to above)

stdout:
ambiguous: slash / brace } hi
quoted:    slash brace } hi
stderr:
ksh12 Synthesized ${x///} bug (similar to above)

[ksh stdout] Expected 'ambiguous: slash brace } hi\nquoted: slash brace } hi\n' Got 'ambiguous: slash / brace } hi\nquoted: slash brace } hi\n'

stdout:
ambiguous: slash / brace } hi
quoted:    slash brace } hi
stderr:
toysh12 Synthesized ${x///} bug (similar to above)

[toysh stdout] Expected 'ambiguous: slash brace } hi\nquoted: slash brace } hi\n' Got 'ambiguous: slash / brace } hi\nquoted: slash / brace } hi\n'

stdout:
ambiguous: slash / brace } hi
quoted:    slash / brace } hi
stderr:
sush12 Synthesized ${x///} bug (similar to above)

[sush stdout] Expected 'ambiguous: slash brace } hi\nquoted: slash brace } hi\n' Got 'ambiguous: slash / brace } hi\nquoted: slash brace } hi\n'

stdout:
ambiguous: slash / brace } hi
quoted:    slash brace } hi
stderr:
brush12 Synthesized ${x///} bug (similar to above)

[brush stdout] Expected 'ambiguous: slash brace } hi\nquoted: slash brace } hi\n' Got 'ambiguous: slash / brace } hi\nquoted: slash brace } hi\n'

stdout:
ambiguous: slash / brace } hi
quoted:    slash brace } hi
stderr:
dash13 ${v/a} is the same as ${v/a/} -- no replacement string

[dash stdout] Expected 'abb\nstatus=0\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
dash14 Replacement with special chars (bug fix)

[dash stdout] Expected '?x\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
toysh14 Replacement with special chars (bug fix)

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

stdout:
"?"x
stderr:
dash15 Replace backslash

[dash stdout] Expected '[_]\n[\\_]\n[\\_]\n[_]\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 3: Bad substitution
zsh15 Replace backslash

stdout:
[_]
[_]
[\_]
[_]
stderr:
mksh15 Replace backslash

stdout:
[_]
[_]
[\_]
[_]
stderr:
ksh15 Replace backslash

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

stdout:
[_]
[_]
[\_]
[_]
stderr:
toysh15 Replace backslash

[toysh stdout] Expected '[_]\n[\\_]\n[\\_]\n[_]\n', got '[\\f]\n[\\f]\n[\\]\n[_]\n'

stdout:
[\f]
[\f]
[\]
[_]
stderr:
sush15 Replace backslash

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

stdout:
[\_]
[\_]
[\_]
[\_]
stderr:
dash16 Replace right ]

[dash stdout] Expected '--_--\n--_--\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 3: Bad substitution
toysh16 Replace right ]

[toysh stdout] Expected '--_--\n--_--\n', got '--]--\n--]--\n'

stdout:
--]--
--]--
stderr:
dash17 Substitute glob characters in pattern, quoted and unquoted

[dash stdout] Expected 'a-b\n-\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 5: Bad substitution
ash17 Substitute glob characters in pattern, quoted and unquoted

[ash stdout] Expected 'a-b\n-\n', got ''

stdout:
stderr: 
zsh17 Substitute glob characters in pattern, quoted and unquoted

stdout:
a-b
a-b
stderr:
toysh17 Substitute glob characters in pattern, quoted and unquoted

[toysh stdout] Expected 'a-b\n-\n', got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
sush17 Substitute glob characters in pattern, quoted and unquoted

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

stdout:
-
-
stderr:
dash18 Substitute one unicode character (UTF-8)

[dash stdout] Expected 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 6: Bad substitution
ash18 Substitute one unicode character (UTF-8)

[ash stdout] Expected 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n', got '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n'

stdout:
_μ_ and _μ_
_μ_ and _μ_
_μ_ and _μ_
stderr:
mksh18 Substitute one unicode character (UTF-8)

stdout:
_μ_ and _μ_
_μ_ and _μ_
_μ_ and _μ_
stderr:
dash19 When LC_ALL=C, pattern ? doesn't match multibyte character

[dash stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 6: Bad substitution
ash19 When LC_ALL=C, pattern ? doesn't match multibyte character

[ash stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\n_x_ and _y_\n_x_ and _y_\n'

stdout:
_μ_ and _μ_
_μ_ and _μ_
_μ_ and _μ_

foo and foo
_x_ and _y_
_x_ and _y_
stderr:
toysh19 When LC_ALL=C, pattern ? doesn't match multibyte character

[toysh stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n'

stdout:
foo and foo
foo and _μ_
_μ_ and foo

foo and foo
foo and _y_
_x_ and foo
stderr:
sush19 When LC_ALL=C, pattern ? doesn't match multibyte character

[sush stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n'

stdout:
foo and foo
foo and _μ_
_μ_ and foo

foo and foo
foo and _y_
_x_ and foo
stderr:
brush19 When LC_ALL=C, pattern ? doesn't match multibyte character

[brush stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n'

stdout:
foo and foo
foo and _μ_
_μ_ and foo

foo and foo
foo and _y_
_x_ and foo
stderr:
osh19 When LC_ALL=C, pattern ? doesn't match multibyte character

[osh stdout] Expected '_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n_\xce\xbc_ and _\xce\xbc_\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n' Got 'foo and foo\nfoo and _\xce\xbc_\n_\xce\xbc_ and foo\n\nfoo and foo\nfoo and _y_\n_x_ and foo\n'

stdout:
foo and foo
foo and _μ_
_μ_ and foo

foo and foo
foo and _y_
_x_ and foo
stderr:
dash20 ${x/^} regression

[dash stdout] Expected 'abc\nabc\n^^\n^^^\n!!!\n!!\nb!c\na^c\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
toysh20 ${x/^} regression

[toysh stdout] Expected 'abc\nabc\n^^\n^^^\n!!!\n!!\nb!c\na^c\n', got 'abc\nabc\n^^\n^^^\n!!!\n!!!\nb!c\na^!c\n'

stdout:
abc
abc
^^
^^^
!!!
!!!
b!c
a^!c
stderr:
dash21 \(\) in pattern (regression)

[dash stdout] Expected '1 z\n2 z\n3 fooz\n4 z\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
toysh21 \(\) in pattern (regression)

[toysh stdout] Expected '1 z\n2 z\n3 fooz\n4 z\n', got '1 z\n2 z\n3 foo\n4 z\n'

stdout:
1 z
2 z
3 foo
4 z
stderr:
sush21 \(\) in pattern (regression)

[sush stdout] Expected '1 z\n2 z\n3 fooz\n4 z\n', got '1 foo()\n2 foo()\n3 fooz\n4 foo()\n'

stdout:
1 foo()
2 foo()
3 fooz
4 foo()
stderr:
dash22 patsub with single quotes and hyphen in character class (regression)

[dash stdout] Expected '++--.,<>[]\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 2: Bad substitution
mksh22 patsub with single quotes and hyphen in character class (regression)

stdout:
helloworld
stderr:
ksh22 patsub with single quotes and hyphen in character class (regression)

[ksh stdout] Expected '++--.,<>[]\n', got 'helloworld\n'

stdout:
helloworld
stderr:
toysh22 patsub with single quotes and hyphen in character class (regression)

[toysh stdout] Expected '++--.,<>[]\n', got '^++--hello.,world<>[]\n'

stdout:
^++--hello.,world<>[]
stderr:
sush22 patsub with single quotes and hyphen in character class (regression)

[sush stdout] Expected '++--.,<>[]\n', got '^++--hello.,world<>[]\n'

stdout:
^++--hello.,world<>[]
stderr:
brush22 patsub with single quotes and hyphen in character class (regression)

[brush stdout] Expected '++--.,<>[]\n', got '^++--hello.,world<>[]\n'

stdout:
^++--hello.,world<>[]
stderr:
ERROR error: invalid regex: Parsing error at position 27: Invalid character class; expression: '(?ms)[^\>\<\+\-\.\,\\\[\]\]'
dash23 patsub with [^]]

[dash stdout] Expected 'ab^cd^\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 3: Bad substitution
ash23 patsub with [^]]

[ash stdout] Expected 'ab^cd^\n', got 'zzzzzz\n'

stdout:
zzzzzz
stderr:
osh23 patsub with [^]]

[osh stdout] Expected 'ab^cd^\n', got 'zzzzzz\n'

stdout:
zzzzzz
stderr:
bash24 [a-z] Invalid range end is syntax error

stdout:
fooz
status=0
stderr:
dash24 [a-z] Invalid range end is syntax error

[dash status] Expected 1, got 2

stdout:
stderr: 
dash: 3: Bad substitution
ash24 [a-z] Invalid range end is syntax error

stdout:
fooz
status=0
stderr:
zsh24 [a-z] Invalid range end is syntax error

stdout:
fooz
status=0
stderr:
mksh24 [a-z] Invalid range end is syntax error

stdout:
fooz
status=0
stderr:
ksh24 [a-z] Invalid range end is syntax error

[ksh stdout] Expected u'', got 'fooz\nstatus=0\n'
[ksh status] Expected 1, got 0

stdout:
fooz
status=0
stderr:
toysh24 [a-z] Invalid range end is syntax error

[toysh stdout] Expected u'', got 'fooz\nstatus=0\n'
[toysh status] Expected 1, got 0

stdout:
fooz
status=0
stderr:
sush24 [a-z] Invalid range end is syntax error

[sush stdout] Expected u'', got 'fooz\nstatus=0\n'
[sush status] Expected 1, got 0

stdout:
fooz
status=0
stderr:
brush24 [a-z] Invalid range end is syntax error

[brush stdout] Expected u'', got 'status=1\n'
[brush status] Expected 1, got 0

stdout:
status=1
stderr:
ERROR error: invalid regex: Error compiling regex: Regex error: error parsing pattern 0; expression: '(?ms)[z-a]'
dash25 Pattern is empty $foo$bar -- regression for infinite loop

[dash stdout] Expected '-foo-\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 3: Bad substitution
ash25 Pattern is empty $foo$bar -- regression for infinite loop

[ash stdout] Expected '-foo-\n', got '-foo- bar\n'

stdout:
-foo- bar
stderr:
zsh25 Pattern is empty $foo$bar -- regression for infinite loop

stdout:
bar-barfbarobarobar-
stderr:
sush25 Pattern is empty $foo$bar -- regression for infinite loop

[sush stdout] Expected '-foo-\n', got ''
[sush status] Expected 0, got 1

stdout:
stderr: 
/home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: parse error
brush25 Pattern is empty $foo$bar -- regression for infinite loop

[brush stdout] Expected '-foo-\n', got 'bar-barfbarobarobar-bar\n'

stdout:
bar-barfbarobarobar-bar
stderr:
dash26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[dash stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 4: Bad substitution
ash26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[ash stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got '\\/foo\\/bar\\/baz\n/foo/bar/baz /\\/\n'

stdout:
\/foo\/bar\/baz
/foo/bar/baz /\/
stderr:
zsh26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

stdout:
stderr: 
mksh26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

stdout:
/foo/bar/baz
\/foo\/bar\/baz
stderr:
ksh26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[ksh stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got '/foo/bar/baz\n\\/foo\\/bar\\/baz\n'

stdout:
/foo/bar/baz
\/foo\/bar\/baz
stderr:
toysh26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[toysh stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got ''
[toysh status] Expected 0, got -6

stdout:
stderr: 
munmap_chunk(): invalid pointer
sush26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[sush stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got '/foo/bar/baz\n\\/foo\\/bar\\/baz\n'

stdout:
/foo/bar/baz
\/foo\/bar\/baz
stderr:
brush26 Chromium from http://www.oilshell.org/blog/2016/11/07.html

[brush stdout] Expected '\\/foo\\/bar\\/baz\n\\/foo\\/bar\\/baz\n', got '/\\///\\/f/\\/o/\\/o/\\///\\/b/\\/a/\\/r/\\///\\/b/\\/a/\\/z/\\/\n\\/foo\\/bar\\/baz\n'

stdout:
/\///\/f/\/o/\/o/\///\/b/\/a/\/r/\///\/b/\/a/\/z/\/
\/foo\/bar\/baz
stderr:
dash27 ${x//~homedir/}

[dash stdout] Expected 'z/git/oilshell\nz/git/oilshell\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
dash: 4: Bad substitution
sush27 ${x//~homedir/}

[sush stdout] Expected 'z/git/oilshell\nz/git/oilshell\n', got 'zzgitzoilshell\nz/git/oilshell\n'

stdout:
zzgitzoilshell
z/git/oilshell
stderr: