Re:The friendship between Haskell and C
by cryptonector on Friday March 17, 2023 @12:17PM
(#35199106)
The FFI wrappers can restore the previous value of errno after reading the newer value after calling whatever foreign function, thus undoing that side-effect, and nothing other than a signal handler could observe this side-effect in the middle of the FFI wrapper's execution.
Oh, note to self: signal handlers need to restore errno values if they call async-signal-safe functions that can set errno.
Oh, note to self: signal handlers need to restore errno values if they call async-signal-safe functions that can set errno.