diff --git a/System/IO/ExplicitIOModes.hs b/System/IO/ExplicitIOModes.hs
--- a/System/IO/ExplicitIOModes.hs
+++ b/System/IO/ExplicitIOModes.hs
@@ -185,6 +185,9 @@
     , hGetBuf
 
 #if !defined(__NHC__) && !defined(__HUGS__)
+#if MIN_VERSION_base(4,3,0)
+    , hGetBufSome
+#endif
     , hPutBufNonBlocking
     , hGetBufNonBlocking
 #endif
@@ -233,7 +236,6 @@
 import Control.Arrow       ( second )
 import Foreign.Ptr         ( Ptr )
 import Data.Eq             ( Eq, (==) )
-import Data.Ord            ( Ord, (<=) )
 import Data.Function       ( ($) )
 import Data.Bool           ( Bool(False, True) )
 import Data.Maybe          ( Maybe(Nothing, Just) )
@@ -330,24 +332,6 @@
     ReadWriteMode == ReadWriteMode = True
     _             == _             = False
 
-instance Ord (IOMode ioMode) where
-    ReadWriteMode <= ReadWriteMode = True
-    ReadWriteMode <= _             = False
-
-    AppendMode    <= ReadWriteMode = True
-    AppendMode    <= AppendMode    = True
-    AppendMode    <= _             = False
-
-    WriteMode     <= ReadWriteMode = True
-    WriteMode     <= AppendMode    = True
-    WriteMode     <= WriteMode     = True
-    WriteMode     <= _             = False
-
-    ReadMode      <= ReadWriteMode = True
-    ReadMode      <= AppendMode    = True
-    ReadMode      <= WriteMode     = True
-    ReadMode      <= ReadMode      = True
-
 instance Show (IOMode ioMode) where
     show ReadMode      = "ReadMode"
     show WriteMode     = "WriteMode"
@@ -614,6 +598,13 @@
 hGetBuf = wrap SIO.hGetBuf
 
 #if !defined(__NHC__) && !defined(__HUGS__)
+
+#if MIN_VERSION_base(4,3,0)
+-- | Wraps: @System.IO.'SIO.hGetBufSome'@.
+hGetBufSome ∷ ReadModes ioMode ⇒ Handle ioMode → Ptr α → Int → IO Int
+hGetBufSome = wrap SIO.hGetBufSome
+#endif
+
 -- | Wraps: @System.IO.'SIO.hPutBufNonBlocking'@.
 hPutBufNonBlocking ∷ WriteModes ioMode ⇒ Handle ioMode → Ptr α → Int → IO Int
 hPutBufNonBlocking = wrap SIO.hPutBufNonBlocking
diff --git a/explicit-iomodes.cabal b/explicit-iomodes.cabal
--- a/explicit-iomodes.cabal
+++ b/explicit-iomodes.cabal
@@ -1,5 +1,5 @@
 name:          explicit-iomodes
-version:       0.5
+version:       0.6
 cabal-version: >=1.6
 build-type:    Simple
 license:       BSD3
@@ -26,7 +26,7 @@
 
 Library
   GHC-Options: -Wall
-  build-depends: base                 >= 4     && < 4.3
+  build-depends: base                 >= 4     && < 4.4
                , base-unicode-symbols >= 0.1.1 && < 0.3
                , tagged               >= 0.0   && < 0.2
   exposed-modules: System.IO.ExplicitIOModes
