stderr (or any stream for that matter) can be bound to a file descriptor which is can be deleted externally.
To reproduce, see the original post recipe: by exiting the shell, we delete the standard error file descriptor. This raises a condition in the Common Lisp process when it tries to write there.
Ideally, I'd like to know if there is a way to prevent such conditions being raised. A handler-bind is not always an option, especially when libraries start other threads themselves, which may in turn raise this condition.
stderr (or any stream for that matter) can be bound to a file descriptor which is can be deleted externally.
To reproduce, see the original post recipe: by exiting the shell, we delete the standard error file descriptor. This raises a condition in the Common Lisp process when it tries to write there.
Ideally, I'd like to know if there is a way to prevent such conditions being raised. A handler-bind is not always an option, especially when libraries start other threads themselves, which may in turn raise this condition.