HANDLE --> (void *), we can't rely on having included windows.h here
[ghc-hetmet.git] / includes / RtsExternal.h
index 3a3626b..0c606e9 100644 (file)
 /* The standard FFI interface */
 #include "HsFFI.h"
 
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
 /* -----------------------------------------------------------------------------
    Functions exported by the RTS for use in Stg code
    -------------------------------------------------------------------------- */
@@ -36,7 +40,7 @@ extern int genericRaise(int sig);
 extern int cmp_thread(StgPtr tso1, StgPtr tso2);
 extern int rts_getThreadId(StgPtr tso);
 extern int forkOS_createThread ( HsStablePtr entry );
-extern StgInt forkProcess(HsStablePtr *entry);
+extern pid_t forkProcess(HsStablePtr *entry);
 extern HsBool rtsSupportsBoundThreads(void);
 extern StgInt newSpark (StgRegTable *reg, StgClosure *p);
 
@@ -86,7 +90,7 @@ extern StgInt *signal_handlers;
 #endif
 
 #if defined(mingw32_HOST_OS)
-HANDLE getIOManagerEvent (void);
+void *getIOManagerEvent (void);
 HsWord32 readIOManagerEvent (void);
 void sendIOManagerEvent (HsWord32 event);
 #else