diff --git a/ChangeLog b/ChangeLog index b912821e2..3e06cfa83 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2016-12-05 Peter Stephenson + * 40100: Test/C03traps.ztst: Check ERR_EXIT and ERR_RETURN on + anonymous functions: should exit on function return even if + suppressed internally. + * 40097: Src/exec.c, Test/C03traps.ztst: Don't trigger ERR_EXIT or ERR_RETURN on non-zero status after current shell group, either. diff --git a/Test/C03traps.ztst b/Test/C03traps.ztst index dc386a44e..7bc0b486d 100644 --- a/Test/C03traps.ztst +++ b/Test/C03traps.ztst @@ -713,6 +713,17 @@ F:Must be tested with a top-level script rather than source or function ) 1:ERR_EXIT triggered by status 1 within { } + (setopt err_exit + () { + false && true + print Still functioning + false && true + } + print OK + ) +1:ERR_EXIT triggered by status 1 at end of anon func +>Still functioning + if zmodload zsh/system 2>/dev/null; then ( trap 'echo TERM; exit 2' TERM