aboutsummaryrefslogtreecommitdiffstats
path: root/nonposix.h
diff options
context:
space:
mode:
Diffstat (limited to 'nonposix.h')
-rw-r--r--nonposix.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/nonposix.h b/nonposix.h
index 88fd9e69..976e0b7d 100644
--- a/nonposix.h
+++ b/nonposix.h
@@ -29,3 +29,18 @@
*/
#define FAKE_FD_VALUE 42
+
+#ifdef __MINGW32__
+/* Replacements for sys/wait.h macros. */
+# define WEXITSTATUS(stv) (((unsigned)(stv)) & ~0xC0000000)
+/* MS-Windows programs that crash due to a fatal exception exit with
+ an exit code whose 2 MSB bits are set. */
+# define WIFEXITED(stv) ((((unsigned)(stv)) & 0xC0000000) == 0)
+# define WIFSIGNALED(stv) ((((unsigned)(stv)) & 0xC0000000) == 0xC0000000)
+# define WTERMSIG(stv) w32_status_to_termsig ((unsigned)stv)
+# define WIFSTOPPED(stv) (0)
+# define WSTOPSIG(stv) (0)
+
+int w32_status_to_termsig (unsigned);
+
+#endif