Results for builtin-trap-err.test.sh

statusbashmkshashosh
pass 17131517
ok 0001
N-I 1320
BUG 2430
FAIL 0002
total20202020
casebashmkshashoshdescription
0pass pass pass pass trap can use original $LINENO
1pass pass pass pass trap ERR and set -o errexit
2pass pass pass pass trap ERR and errexit disabled context
3pass pass pass pass trap ERR and if statement
4pass pass pass pass trap ERR and || conditional
5pass BUG BUG pass trap ERR and pipeline
detailsdetails
6BUG pass pass pass trap ERR pipelines without simple commands
details
7pass pass pass pass Pipeline group quirk
8pass pass pass pass trap ERR does not run in errexit situations
9pass pass pass pass trap ERR doesn't run in subprograms - subshell, command sub, async
10pass N-I BUG FAIL set -o errtrace: trap ERR runs in subprograms
detailsdetailsdetails
11pass N-I pass pass trap ERR not active in shell functions in (bash behavior)
details
12pass BUG pass FAIL set -o errtrace - trap ERR runs in shell functions
detailsdetails
13pass BUG pass pass trap ERR with "atoms": assignment (( [[
details
14pass pass pass pass trap ERR with for, case, { }
15BUG BUG BUG pass trap ERR with redirect
detailsdetailsdetails
16N-I N-I N-I pass trap ERR with YSH proc
detailsdetailsdetails
17pass pass pass pass trap ERR
18pass pass N-I ok trap ERR and pipelines - PIPESTATUS difference
detailsdetails
19pass pass pass pass error in trap ERR (recursive)
62 passed, 1 OK, 6 not implemented, 9 BUG, 2 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

mksh5 trap ERR and pipeline

stdout:
line=1
line=1
stderr:
ash5 trap ERR and pipeline

stdout:
line=1
line=1
stderr:
bash6 trap ERR pipelines without simple commands

stdout:
assign
dparen
dbracket
subshell
subshell
subshell2
subshell2
group
ok
stderr:
mksh10 set -o errtrace: trap ERR runs in subprograms

stdout:
stderr: 
ash10 set -o errtrace: trap ERR runs in subprograms

stdout:
subshell
async
line=14
ok
stderr:
osh10 set -o errtrace: trap ERR runs in subprograms

[osh stdout] Expected 'line=6\nsubshell\nline=12\nasync\nline=14\nok\n' Got 'subshell\nasync\nline=14\nok\n'

stdout:
subshell
async
line=14
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:3: 'set' got invalid option 'errtrace'
[1] Done PID 12174
[1] Done PID 12175
mksh11 trap ERR not active in shell functions in (bash behavior)

stdout:
line=4
stderr:
mksh12 set -o errtrace - trap ERR runs in shell functions

stdout:
line=4
line=10
stderr:
mksh: <stdin>[16]: set: errtrace: bad option
osh12 set -o errtrace - trap ERR runs in shell functions

[osh stdout] Expected 'line=14\nnow with errtrace\nline=4\nline=10\nline=20\nok\n' Got 'line=10\nline=16\nnow with errtrace\nline=10\nok\n'

stdout:
line=10
line=16
now with errtrace
line=10
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:16: 'set' got invalid option 'errtrace'
mksh13 trap ERR with "atoms": assignment (( [[

stdout:
line=3
line=3
line=7
ok
stderr:
bash15 trap ERR with redirect

stdout:
line=3
line=3
ok
stderr:
bash: line 7: /zz: Permission denied
mksh15 trap ERR with redirect

stdout:
line=3
line=3
ok
stderr:
mksh: <stdin>[7]: can't create /zz: Permission denied
ash15 trap ERR with redirect

stdout:
line=3
ok
stderr:
ash: can't create /zz: Permission denied
bash16 trap ERR with YSH proc

stdout:
stderr: 
mksh16 trap ERR with YSH proc

stdout:
stderr: 
ash16 trap ERR with YSH proc

stdout:
stderr: 
ash18 trap ERR and pipelines - PIPESTATUS difference

stdout:
stderr: 
osh18 trap ERR and pipelines - PIPESTATUS difference

stdout:
A
err [] status=1 []
B
err [] status=1 [0 1]
err [] status=1 [0 1 0]
ok
stderr: