From 97d4bdbc7e86e6e8da0d4a059b118ffab289d3a9 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 24 Aug 2017 19:46:20 +0100 Subject: 41590 modified as 41595: make ERR_RETURN more logical. It now operates separately at each function depth. To keep ERR_EXIT global, make the noerrexit variable usd bit flags. Extend tests. --- README | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'README') diff --git a/README b/README index f711b1738..d59ddfebb 100644 --- a/README +++ b/README @@ -81,6 +81,19 @@ against user defined widgets inadvertently reading from the tty device, and addresses the antisocial behaviour of running a command with its stdin closed. +5) [New between 5.4.1 and 5.4.2] In previous versions of the shell, the +following code: + + () { setopt err_return; false; echo 'oh no' } && true + +printed "oh no", as the ERR_RETURN behaviour was suppressed when +a function was executed on the left hand side of an "&&" list. This was +undocumented and inconvenient as it is generally more useful to consider +execution within a function in isolation from its environment. The shell +now returns from the function on executing `false'. (This is general +to all functions; an anonymous function is shown here for compactness.) + + Incompatibilities between 5.0.8 and 5.3 ---------------------------------------- -- cgit 1.4.1