Thanks for the report and analysis. I went ahead and commit d1447c7
clarifies the behavior of ‘select’ in the presence of interruptions by
signals (will be in 2.0.12.)
Ludo’.
On looking at the code in filesys.c, it is evident that EINTR is not
handled by select as described in the documentation, and that there are
three solutions to this:
1. To do what the documentation says, and to handle EINTR by returning
rather than by throwing a system-error exception ("[select]
A program of mine using guile-2.0.11 fails whenever a signal occurs
while a call to select is blocking, with this error:
Backtrace:
In ice-9/boot-9.scm:
157: 9 [catch #t # ...]
In unknown file:
?: 8 [apply-smob/1 #]
In ice-9/boot-9.scm:
63: 7 [call-with-prompt prompt0 ...]
In