diff --git a/explicit-exception.cabal b/explicit-exception.cabal
--- a/explicit-exception.cabal
+++ b/explicit-exception.cabal
@@ -1,5 +1,5 @@
 Name:             explicit-exception
-Version:          0.1.7
+Version:          0.1.7.1
 License:          BSD3
 License-File:     LICENSE
 Author:           Henning Thielemann <haskell@henning-thielemann.de>
@@ -46,7 +46,7 @@
 Source-Repository this
   type:     darcs
   location: http://code.haskell.org/explicit-exception/
-  tag:      0.1.7
+  tag:      0.1.7.1
 
 Flag buildTests
   description: Build test suite
@@ -92,7 +92,7 @@
 Executable ee-tar
   If flag(buildTests)
     Build-Depends:
-      bytestring >=0.9.0.1 && <0.10,
+      bytestring >=0.9.0.1 && <0.11,
       tar >=0.3 && <0.4
   Else
     Buildable: False
@@ -103,7 +103,7 @@
 Executable ee-test
   If flag(buildTests)
     Build-Depends:
-      bytestring >=0.9.0.1 && <0.10
+      bytestring >=0.9.0.1 && <0.11
   Else
     Buildable: False
   GHC-Options: -Wall
diff --git a/src/Control/Monad/Exception/Synchronous.hs b/src/Control/Monad/Exception/Synchronous.hs
--- a/src/Control/Monad/Exception/Synchronous.hs
+++ b/src/Control/Monad/Exception/Synchronous.hs
@@ -241,6 +241,14 @@
          Exception e -> Exception e
          Success y -> f y
 
+{- |
+I think it is not a good idea to use this instance,
+maybe we shoul remove it.
+It expects that the constructor is 'Success'
+and the result is undefined otherwise.
+But if the constructor must always be 'Success',
+why using 'Exceptional' then, at all?
+-}
 instance MonadFix (Exceptional e) where
     mfix f =
        let unSuccess ~(Success x) = x
@@ -445,6 +453,9 @@
             Exception e -> return (Exception e)
             Success x -> runExceptionalT $ f x
 
+{- |
+Same restrictions applies as for @instance MonadFix (Exceptional e a)@.
+-}
 instance (MonadFix m) => MonadFix (ExceptionalT e m) where
    mfix f = ExceptionalT $ mfix $ \ ~(Success r) -> runExceptionalT $ f r
 
diff --git a/src/System/IO/Straight.hs b/src/System/IO/Straight.hs
--- a/src/System/IO/Straight.hs
+++ b/src/System/IO/Straight.hs
@@ -15,8 +15,7 @@
 
 import Control.Monad.Exception.Synchronous
    (Exceptional(Success, Exception), ExceptionalT(ExceptionalT), )
-import Control.Exception (IOException)
-import System.IO.Error (try)
+import Control.Exception (IOException, try)
 import Control.Monad.IO.Class (MonadIO, liftIO, )
 
 import System.IO.Unsafe (unsafeInterleaveIO, )
