When using SA_RESTART, signal handlers are never executed, as in this example (checked on 2.0.9+):
--8<---------------cut here---------------start------------->8---
(sigaction SIGALRM
(lambda (signum)
(pk 'sig signum))
SA_RESTART)
(alarm 3)
(pk 'char (read-char))
--8<---------------cut here---------------end--------------->8---
Presumably this is because the read(2) syscall is automatically
restarted, leaving no chance for the handler async to run.
Ludo’.
