[project @ 2004-03-01 14:11:01 by simonmar]
[ghc-hetmet.git] / ghc / rts / RtsStartup.c
index e7da54f..5255386 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: RtsStartup.c,v 1.77 2003/09/25 15:14:41 panne Exp $
+ * $Id: RtsStartup.c,v 1.79 2004/02/27 13:35:16 simonmar Exp $
  *
  * (c) The GHC Team, 1998-2002
  *
@@ -81,14 +81,14 @@ static void *saved_termios[3] = {NULL,NULL,NULL};
 void*
 __hscore_get_saved_termios(int fd)
 {
-  return (0 <= fd && fd < sizeof(saved_termios) / sizeof(*saved_termios)) ?
+  return (0 <= fd && fd < (int)(sizeof(saved_termios) / sizeof(*saved_termios))) ?
     saved_termios[fd] : NULL;
 }
 
 void
 __hscore_set_saved_termios(int fd, void* ts)
 {
-  if (0 <= fd && fd < sizeof(saved_termios) / sizeof(*saved_termios)) {
+  if (0 <= fd && fd < (int)(sizeof(saved_termios) / sizeof(*saved_termios))) {
     saved_termios[fd] = ts;
   }
 }
@@ -324,14 +324,14 @@ hs_exit(void)
     /* start timing the shutdown */
     stat_startExit();
     
-    /* stop all running tasks */
-    exitScheduler();
-    
 #if !defined(GRAN)
     /* Finalize any remaining weak pointers */
     finalizeWeakPointersNow();
 #endif
     
+    /* stop all running tasks */
+    exitScheduler();
+    
 #if defined(GRAN)
     /* end_gr_simulation prints global stats if requested -- HWL */
     if (!RtsFlags.GranFlags.GranSimStats.Suppressed)