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