final revision to GArrow classes
[ghc-base.git] / GHC / ConsoleHandler.hs
index af115b8..562ef32 100644 (file)
@@ -1,4 +1,5 @@
-{-# OPTIONS_GHC -cpp #-}
+{-# LANGUAGE CPP, ForeignFunctionInterface #-}
+
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  GHC.ConsoleHandler
@@ -18,7 +19,6 @@
 module GHC.ConsoleHandler
 #if !defined(mingw32_HOST_OS) && !defined(__HADDOCK__)
         where
-import Prelude -- necessary to get dependencies right
 #else /* whole file */
         ( Handler(..)
         , installHandler
@@ -27,11 +27,9 @@ import Prelude -- necessary to get dependencies right
         ) where
 
 {-
-#include "Signals.h"
+#include "rts/Signals.h"
 -}
 
-import Prelude -- necessary to get dependencies right
-
 import Foreign
 import Foreign.C
 import GHC.IO.FD
@@ -42,6 +40,11 @@ import GHC.Conc
 import Control.Concurrent.MVar
 import Data.Typeable
 
+#ifdef mingw32_HOST_OS
+import Data.Maybe
+import GHC.Base
+#endif
+
 data Handler
  = Default
  | Ignore
@@ -144,7 +147,7 @@ flushConsole h =
                         "handle is not a file descriptor" Nothing Nothing
       Just fd -> do
         throwErrnoIfMinus1Retry_ "flushConsole" $
-           flush_console_fd (fromIntegral (fdFD fd))
+           flush_console_fd (fdFD fd)
 
 foreign import ccall unsafe "consUtils.h flush_input_console__"
         flush_console_fd :: CInt -> IO CInt