Hi there, Yesterday, I was extensively using traps with mksh and I noticed something unexpected. Let's consider the following example, from the book "Learning the Korn shell, 2nd edition", on this page : https://docstore.mik.ua/orelly/unix3/korn/ch09_01.htm
function func { trap 'print "exiting from the function"' EXIT print 'start of the function' } trap 'print "exiting from the script"' EXIT print 'start of the script' func With mksh (R57 & R58), the "global" trap defined outside the function is never triggered, as if the trap from function inhibits it : $ print $KSH_VERSION @(#)MIRBSD KSH R58 2020/03/27 $ mksh testtrap start of the script start of the function exiting from the function With ksh93 : $ print $KSH_VERSION Version A 2020.0.0 $ ksh testtrap start of the script start of the function exiting from the function exiting from the script >From the mksh manpage, we can read this paragraph : A separate trap/signal environment will be used during the execution of functions. This will mean that traps set inside a function will not affect the shell's traps Could you tell me if I missed something ? Thanks for your help and take care. Regards Ypnose