[project @ 2005-02-04 14:20:57 by ross]
[ghc-base.git] / Foreign / C / Error.hs
index 9ee6499..ac26141 100644 (file)
@@ -1,4 +1,4 @@
-{-# OPTIONS -fno-implicit-prelude -#include "HsBase.h" #-}
+{-# OPTIONS_GHC -fno-implicit-prelude -#include "HsBase.h" #-}
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Foreign.C.Error
@@ -119,7 +119,8 @@ import GHC.IOBase
 import GHC.Num
 import GHC.Base
 #else
-import System.IO               ( IOError, Handle, ioError )
+import System.IO               ( Handle )
+import System.IO.Error         ( IOError, ioError )
 import System.IO.Unsafe                ( unsafePerformIO )
 #endif
 
@@ -471,7 +472,7 @@ errnoToIOError loc errno maybeHdl maybeName = unsafePerformIO $ do
         | errno == eAFNOSUPPORT    = UnsupportedOperation
         | errno == eAGAIN          = ResourceExhausted
         | errno == eALREADY        = AlreadyExists
-        | errno == eBADF           = OtherError
+        | errno == eBADF           = InvalidArgument
         | errno == eBADMSG         = InappropriateType
         | errno == eBADRPC         = OtherError
         | errno == eBUSY           = ResourceBusy