mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 17:04:41 +00:00
POSIX signal has an identical definition to ISO C signal: https://pubs.opengroup.org/onlinepubs/9799919799/functions/signal.html ```c void (*signal(int sig, void (*func)(int)))(int); /* more readably restated by glibc as */ typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler); ``` However, std/posix had omitted the function's return value; this fixes that. To prevent breaking every single line of code ever that touched this binding (including mine...), I've also made it discardable. Additionally, I have noticed that bsd_signal's type signature is wrong - it should have been identical to signal. But bsd_signal was already removed in POSIX 2008, and sigaction is the recommended, portable POSIX signal interface. So I just deleted the bsd_signal binding. Co-authored-by: ringabout <43030857+ringabout@users.noreply.github.com>