[project @ 2000-07-06 16:31:45 by simonpj]
[ghc-hetmet.git] / ghc / interpreter / connect.h
index 430e130..a93a265 100644 (file)
@@ -9,8 +9,8 @@
  * included in the distribution.
  *
  * $RCSfile: connect.h,v $
- * $Revision: 1.41 $
- * $Date: 2000/05/10 09:00:20 $
+ * $Revision: 1.44 $
+ * $Date: 2000/06/28 10:42:17 $
  * ------------------------------------------------------------------------*/
 
 /* --------------------------------------------------------------------------
@@ -362,7 +362,7 @@ extern  Void   machdep          ( Int );
 extern  Void   liftControl      ( Int );
 extern  Void   substitution     ( Int );
 extern  Void   typeChecker      ( Int );
-extern  Void   interface        ( Int );
+extern  Void   interfayce       ( Int );
 extern  Void   storage          ( Int );
 
 
@@ -451,6 +451,7 @@ extern  Void  foreignImport     ( Cell,Text,Pair,Cell,Cell );
 extern  Void  foreignExport     ( Cell,Text,Cell,Cell,Cell );
 
 extern  Void  implementForeignImport ( Name );
+extern  Text  makeTypeDescrText      ( Type );
 extern  Void  implementForeignExport ( Name );
 
 extern  List  foreignExports;            /* foreign export declarations     */
@@ -565,6 +566,9 @@ extern HugsBreakAction setBreakAction ( HugsBreakAction );
    to get the signal mask to a sane state each time.
 */
 #include <signal.h>
+
+#if !defined(mingw32_TARGET_OS)
+
 #define setHandler(bh)          { sigset_t mask; \
                           signal(SIGINT,bh); \
                           sigemptyset(&mask); \
@@ -572,6 +576,13 @@ extern HugsBreakAction setBreakAction ( HugsBreakAction );
                           sigprocmask(SIG_UNBLOCK, &mask, NULL); \
                         }
 
+#else
+
+#define setHandler(bh)  { void* old_hdlr = signal(SIGINT,bh);\
+                          if (old_hdlr == SIG_ERR) internal("setHandler"); \
+                         }
+
+#endif /* !defined(mingw32_TARGET_OS) */
 
 /*---------------------------------------------------------------------------
  * Environment variables and the registry