diff --git a/System/IO/ExplicitIOModes.hs b/System/IO/ExplicitIOModes.hs
--- a/System/IO/ExplicitIOModes.hs
+++ b/System/IO/ExplicitIOModes.hs
@@ -232,7 +232,7 @@
 
 -- from base:
 import Prelude             ( Integer )
-import Control.Monad       ( return, (>>=), fail, liftM, liftM2 )
+import Control.Monad       ( return, liftM, liftM2 )
 import Control.Arrow       ( second )
 import Foreign.Ptr         ( Ptr )
 import Data.Eq             ( Eq, (==) )
@@ -243,6 +243,10 @@
 import Data.Char           ( Char, String )
 import Text.Show           ( Show, show )
 import System.IO           ( IO, FilePath )
+
+#if __GLASGOW_HASKELL__ < 700
+import Control.Monad       ( (>>=), fail )
+#endif
 
 import qualified System.IO as SIO
 
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.6
+version:       0.6.0.1
 cabal-version: >=1.6
 build-type:    Simple
 license:       BSD3
@@ -26,6 +26,7 @@
 
 Library
   GHC-Options: -Wall
+
   build-depends: base                 >= 4     && < 4.4
                , base-unicode-symbols >= 0.1.1 && < 0.3
                , tagged               >= 0.0   && < 0.2
