The attached patch fixes the ERR_EXIT behavior in function calls and "always" statements. The patch does the following:- Revert the following patches, which are based on an unfortunate misunderstanding of the expected behavior of ERR_EXIT:
- Add saving and restoring of local_noerrexit in doshfunc in exec.c
- This fixes the ERR_EXIT behavior in function calls.
- Add "this_noerrexit = 1;" at the very end of exectry in loop.c
- This makes "always" statements compliant with the exception 3 of the POSIX specification of "set -e".
- Add new tests in C03traps.ztst
Philippe