diff --git a/roundtrip.cabal b/roundtrip.cabal
--- a/roundtrip.cabal
+++ b/roundtrip.cabal
@@ -1,5 +1,5 @@
 Name:           roundtrip
-Version:        0.2.0.3
+Version:        0.2.0.5
 Synopsis:       Bidirectional (de-)serialization
 Description:    Roundtrip allows the definition of bidirectional
                 (de-)serialization specifications. The specification language
diff --git a/src/Control/Isomorphism/Partial/TH.hs b/src/Control/Isomorphism/Partial/TH.hs
--- a/src/Control/Isomorphism/Partial/TH.hs
+++ b/src/Control/Isomorphism/Partial/TH.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE TemplateHaskell #-}
 module Control.Isomorphism.Partial.TH
   ( defineIsomorphisms
@@ -29,8 +30,13 @@
 defineIsomorphisms' d renameFun =
     do info <- reify d
        let cs = case info of
+#if MIN_VERSION_template_haskell(2,11,0)
+                  TyConI (DataD _ _ _ _ cs _) -> cs
+                  TyConI (NewtypeD _ _ _ _ c _) -> [c]
+#else
                   TyConI (DataD _ _ _ cs _) -> cs
                   TyConI (NewtypeD _ _ _ c _) -> [c]
+#endif
                   otherwise -> error $ show d ++
                                        " neither denotes a data or newtype declaration. Found: " ++
                                        show info
diff --git a/src/Text/Roundtrip/Classes.hs b/src/Text/Roundtrip/Classes.hs
--- a/src/Text/Roundtrip/Classes.hs
+++ b/src/Text/Roundtrip/Classes.hs
@@ -1,5 +1,7 @@
 module Text.Roundtrip.Classes where
 
+import Prelude hiding ((<*>), pure)
+
 import Data.Eq (Eq)
 import Data.Char (Char)
 
diff --git a/src/Text/Roundtrip/Combinators.hs b/src/Text/Roundtrip/Combinators.hs
--- a/src/Text/Roundtrip/Combinators.hs
+++ b/src/Text/Roundtrip/Combinators.hs
@@ -33,13 +33,11 @@
   , xmlString
 ) where
 
-import Prelude hiding ((.), foldl)
+import Prelude hiding (pure, (*>), (<*), (<*>), (<$>), (.), foldl)
 
 import Control.Category ((.))
 
 import Data.Char (isSpace)
-import Data.Maybe (Maybe)
-import Data.Either (Either)
 
 import qualified Data.Text as T
 
