diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,7 @@
+0.4.1
+---
+* Build fixes for GHC < 7.6
+
 0.4
 ---
 * Added `MonadCatch` instance.
diff --git a/src/Data/Functor/Trans/Tagged.hs b/src/Data/Functor/Trans/Tagged.hs
--- a/src/Data/Functor/Trans/Tagged.hs
+++ b/src/Data/Functor/Trans/Tagged.hs
@@ -30,7 +30,11 @@
   , asTaggedTypeOf
   ) where
 
+#if defined(__GLASGOW_HASKELL__) && (__GLASGOW_HASKELL__ >= 706)
 import Prelude hiding (foldr, foldl, mapM, sequence, foldr1, foldl1)
+#else
+import Prelude hiding (catch, foldr, foldl, mapM, sequence, foldr1, foldl1)
+#endif
 import Control.Applicative (Alternative(..), Applicative(..), (<$), (<$>))
 import Control.Monad (liftM, MonadPlus(..))
 import Control.Monad.Catch (MonadCatch(..))
@@ -142,8 +146,10 @@
   {-# INLINE liftIO #-}
 
 instance MonadWriter w m => MonadWriter w (TaggedT s m) where
+#if MIN_VERSION_mtl(2,1,0)
   writer = lift . writer
   {-# INLINE writer #-}
+#endif
   tell = lift . tell
   {-# INLINE tell #-}
   listen = lift . listen . untag
@@ -156,16 +162,20 @@
   {-# INLINE ask #-}
   local f = lift . local f . untag
   {-# INLINE local #-}
+#if MIN_VERSION_mtl(2,1,0)
   reader = lift . reader
   {-# INLINE reader #-}
+#endif
 
 instance MonadState t m => MonadState t (TaggedT s m) where
   get = lift get
   {-# INLINE get #-}
   put = lift . put
   {-# INLINE put #-}
+#if MIN_VERSION_mtl(2,1,0)
   state = lift . state
   {-# INLINE state #-}
+#endif
 
 instance MonadCont m => MonadCont (TaggedT s m) where
   callCC f = lift . callCC $ \k -> untag (f (tag . k))
diff --git a/tagged-transformer.cabal b/tagged-transformer.cabal
--- a/tagged-transformer.cabal
+++ b/tagged-transformer.cabal
@@ -1,5 +1,5 @@
 name:           tagged-transformer
-version:        0.4
+version:        0.4.1
 license:        BSD3
 license-file:   LICENSE
 author:         Edward A. Kmett
