From 05e919dc565dc6231f1c89d23d0264bcb98b29aa Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Tue, 25 Nov 2014 09:15:20 -0800 Subject: 33791: fatal errors in an "always" construct yield nonzero status Fatal errors in the try-block part of an "always" construct cause the entire construct to have nonzero status, even when TRY_BLOCK_ERROR is used to suppress the error. --- Src/loop.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Src') diff --git a/Src/loop.c b/Src/loop.c index 2f639fd5a..82d2fe31a 100644 --- a/Src/loop.c +++ b/Src/loop.c @@ -659,8 +659,9 @@ exectry(Estate state, int do_exec) try_tryflag = save_try_tryflag; - /* Don't record errflag here, may be reset. */ - endval = lastval; + /* Don't record errflag here, may be reset. However, */ + /* endval should show failure when there is an error. */ + endval = lastval ? lastval : errflag; freeheap(); -- cgit 1.4.1