Results for loop.test.sh

casedashbashmkshzshoshosh_ALTdescription
0pass pass pass pass pass pass implicit for loop
1pass pass pass pass pass pass empty for loop (has "in")
2pass ok ok BUG pass pass for loop with invalid identifier
detailsdetailsdetails
3pass pass pass pass pass pass Tilde expansion within for loop
4N-I pass pass pass pass pass Brace Expansion within Array
details
5pass pass pass pass pass pass using loop var outside loop
6pass pass pass pass pass pass continue
7pass pass pass pass pass pass break
8pass pass pass pass ok ok dynamic control flow (KNOWN INCOMPATIBILITY)
detailsdetails
9pass pass pass pass pass pass while in while condition
10pass pass pass pass pass pass while in pipe
11pass pass pass pass pass pass while in pipe with subshell
12pass pass pass pass pass pass until loop
13pass pass pass ok pass pass continue at top level
details
14pass pass BUG pass FAIL FAIL continue in subshell
detailsdetailsdetails
15ok ok pass pass pass pass bad arg to break
detailsdetails
16BUG ok BUG BUG pass pass too many args to continue
detailsdetailsdetailsdetails

86 passed, 8 ok, 1 known unimplemented, 5 known bugs, 1 failed, 0 skipped

Details on runs that didn't PASS

bash2 for loop with invalid identifier

stdout:
stderr: 
_tmp/spec-bin/bash: line 3: `-': not a valid identifier
mksh2 for loop with invalid identifier

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: for: bad identifier
zsh2 for loop with invalid identifier

stdout:
hi
stderr:
zsh: parse error near `-'
zsh: parse error near `done'
dash4 Brace Expansion within Array

stdout:
-{a,b}
{c,d}-
stderr:
osh8 dynamic control flow (KNOWN INCOMPATIBILITY)

stdout:
1
2
3
stderr:
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
osh_ALT8 dynamic control flow (KNOWN INCOMPATIBILITY)

stdout:
1
2
3
stderr:
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
    $b
    ^~
[ stdin ]:4: Can't execute 'break': No such file or directory
zsh13 continue at top level

stdout:
one
stderr:
continue: not in while, until, select, or repeat loop
mksh14 continue in subshell

stdout:
> 1
Should not print
. 1
> 2
Should not print
. 2
> 3
Should not print
. 3
stderr:
_tmp/spec-bin/mksh: <stdin>[5]: continue: can't continue
_tmp/spec-bin/mksh: <stdin>[5]: continue: can't continue
_tmp/spec-bin/mksh: <stdin>[5]: continue: can't continue
osh14 continue in subshell

[osh stdout] Expected '> 1\n. 1\n> 2\n. 2\n> 3\n. 3\n', got '> 1\n> 2\n> 3\n. 3\n. 2\n> 3\n. 3\n. 1\n> 2\n> 3\n. 3\n. 2\n> 3\n. 3\n'

stdout:
> 1
> 2
> 3
. 3
. 2
> 3
. 3
. 1
> 2
> 3
. 3
. 2
> 3
. 3
stderr:
osh_ALT14 continue in subshell

[osh_ALT stdout] Expected '> 1\n. 1\n> 2\n. 2\n> 3\n. 3\n', got '> 1\n> 2\n> 3\n. 3\n. 2\n> 3\n. 3\n. 1\n> 2\n> 3\n. 3\n. 2\n> 3\n. 3\n'

stdout:
> 1
> 2
> 3
. 3
. 2
> 3
. 3
. 1
> 2
> 3
. 3
. 2
> 3
. 3
stderr:
dash15 bad arg to break

stdout:
hi
stderr:
_tmp/spec-bin/dash: 4: break: Illegal number: oops
bash15 bad arg to break

stdout:
hi
stderr:
_tmp/spec-bin/bash: line 4: break: oops: numeric argument required
dash16 too many args to continue

stdout:
a
b
c
--
stderr:
bash16 too many args to continue

stdout:
a
--
stderr:
_tmp/spec-bin/bash: line 3: continue: too many arguments
mksh16 too many args to continue

stdout:
a
b
c
--
stderr:
zsh16 too many args to continue

stdout:
a
b
c
--
stderr:
continue: too many arguments
continue: too many arguments
continue: too many arguments