spec test index / oilshell.org
| case | dash | bash | mksh | ash | osh | osh_ALT | description |
| 0 | pass | pass | pass | pass | pass | pass | errexit aborts early |
| 1 | pass | pass | pass | pass | pass | pass | errexit for nonexistent command |
| 2 | pass | pass | pass | pass | pass | pass | errexit aborts early on pipeline |
| 3 | pass | pass | pass | pass | pass | pass | errexit with { } |
| 4 | pass | pass | pass | pass | pass | pass | errexit with if and { } |
| 5 | pass | pass | pass | pass | pass | pass | errexit with || |
| 6 | pass | pass | pass | pass | pass | pass | errexit with && |
| 7 | pass | pass | pass | pass | pass | pass | errexit test && -- from gen-module-init |
| 8 | pass | pass | pass | pass | pass | pass | errexit test && and fail |
| 9 | pass | pass | pass | pass | pass | pass | errexit and loop |
| 10 | pass | pass | pass | pass | pass | pass | errexit and brace group { } |
| 11 | pass | pass | pass | pass | pass | pass | errexit and time { } |
| 12 | pass | pass | pass | pass | pass | pass | errexit with ! |
| 13 | pass | pass | pass | pass | pass | pass | errexit with ! and ; |
| 14 | pass | pass | pass | pass | pass | pass | errexit with while/until |
| 15 | N-I | pass | pass | BUG | pass | pass | errexit with (( )) |
| details | details | ||||||
| 16 | pass | pass | pass | pass | pass | pass | errexit with subshell |
| 17 | pass | BUG | pass | BUG | pass | pass | errexit with command sub |
| details | details | ||||||
| 18 | BUG | BUG | BUG | BUG | pass | pass | errexit with local |
| details | details | details | details | ||||
| 19 | ok | ok | ok | ok | pass | pass | setting errexit while it's being ignored |
| details | details | details | details | ||||
| 20 | pass | pass | pass | pass | pass | pass | setting errexit in a subshell works but doesn't affect parent shell |
| 21 | ok | ok | ok | ok | pass | pass | setting errexit while it's being ignored in a subshell |
| details | details | details | details | ||||
| 22 | pass | pass | pass | pass | pass | pass | errexit double quard |
122 passed, 8 ok, 1 known unimplemented, 7 known bugs, 0 failed, 0 skipped
| dash | 15 errexit with (( )) stdout: stderr: /bin/dash: 3: i++: not found |
| ash | 15 errexit with (( )) stdout: donestderr: _tmp/shells/ash: i++: not found |
| bash | 17 errexit with command sub stdout: one twostderr: |
| ash | 17 errexit with command sub stdout: one twostderr: |
| dash | 18 errexit with local stdout: good badstderr: |
| bash | 18 errexit with local stdout: good badstderr: |
| mksh | 18 errexit with local stdout: good badstderr: |
| ash | 18 errexit with local stdout: good badstderr: |
| dash | 19 setting errexit while it's being ignored stdout: 1 2 3 4 5 6stderr: |
| bash | 19 setting errexit while it's being ignored stdout: 1 2 3 4 5 6stderr: |
| mksh | 19 setting errexit while it's being ignored stdout: 1 2 3 4 5 6stderr: |
| ash | 19 setting errexit while it's being ignored stdout: 1 2 3 4 5 6stderr: |
| dash | 21 setting errexit while it's being ignored in a subshell stdout: 1 2 3 4 5 6stderr: |
| bash | 21 setting errexit while it's being ignored in a subshell stdout: 1 2 3 4 5 6stderr: |
| mksh | 21 setting errexit while it's being ignored in a subshell stdout: 1 2 3 4 5 6stderr: |
| ash | 21 setting errexit while it's being ignored in a subshell stdout: 1 2 3 4 5 6stderr: |