Subject: bug#6430: Emacs WINDOWS truncates exit status of processes to 8 bits

From: Eli Zaretskii <[email-masked]>
Date: Tue, 14 Jun 2016 17:35:00 +0300

> From: Noam Postavsky <[email-masked]>
> Date: Mon, 13 Jun 2016 22:48:25 -0400
> Cc: [email-masked]
> 
> Problem is 32bit Emacs has 28 bit integers, so there's no way to fit
> the whole exit code anyway. At least truncating to 8 bits is portable.
> Plus, isn't it against Emacs policy to provide features on non-Free
> platforms before Free ones?

All the above is true, but I don't understand the original complaint.
Emacs doesn't truncate exit status of subprocesses in any way, it
retrieves the full value of the status, and then reformats it
according to what the Posix-style WIF* macros (which Emacs uses
elsewhere) expect.  No information is lost during this reformatting,
see the implementation of waitpid in w32proc.c.  Currently, we only
report SIGINT in the WSTOPSIG macro, but that's only because no one
ever needed anything else; if needed, we could also report SIGSEGV
there.

IOW, I see no problem here to begin with.

Thanks.