Fix #1185 (RTS part, also needs corresponding change to libraries/base)
[ghc-hetmet.git] / rts / posix / Signals.h
index 39477f8..b80f711 100644 (file)
@@ -9,18 +9,26 @@
 #ifndef POSIX_SIGNALS_H
 #define POSIX_SIGNALS_H
 
-extern rtsBool anyUserHandlers(void);
+#ifdef HAVE_SIGNAL_H
+# include <signal.h>
+#endif
 
-#if !defined(THREADED_RTS)
+BEGIN_RTS_PRIVATE
 
-extern StgPtr pending_handler_buf[];
-extern StgPtr *next_pending_handler;
+rtsBool anyUserHandlers(void);
+
+#if !defined(THREADED_RTS)
+extern siginfo_t pending_handler_buf[];
+extern siginfo_t *next_pending_handler;
 #define signals_pending() (next_pending_handler != pending_handler_buf)
 void startSignalHandlers(Capability *cap);
-
 #endif
 
+Capability *ioManagerStartCap (Capability *cap);
+
 extern StgInt *signal_handlers;
 
+END_RTS_PRIVATE
+
 #endif /* POSIX_SIGNALS_H */