https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86331
--- Comment #9 from Andreas Schwab <sch...@linux-m68k.org> --- In general, the value of errno is undefined unless you know the previous system call failed. In this case the SIGCHLD signal handler has modified errno. This has nothing to do with VM or arm64 or whatever.