diff --git a/QuickCheck-GenT.cabal b/QuickCheck-GenT.cabal
--- a/QuickCheck-GenT.cabal
+++ b/QuickCheck-GenT.cabal
@@ -1,7 +1,7 @@
 name:
   QuickCheck-GenT
 version:
-  0.2.0
+  0.2.1
 synopsis:
   A GenT monad transformer for QuickCheck library.
 description:
@@ -49,7 +49,6 @@
   default-extensions:
     Arrows
     DeriveGeneric
-    ImpredicativeTypes
     BangPatterns
     PatternGuards
     GADTs
diff --git a/src/QuickCheck/GenT.hs b/src/QuickCheck/GenT.hs
--- a/src/QuickCheck/GenT.hs
+++ b/src/QuickCheck/GenT.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE CPP #-}
+{-# LANGUAGE LambdaCase #-}
 -- |
 -- Most of the code is borrowed from 
 -- <http://haskell.1045720.n5.nabble.com/darcs-patch-GenT-monad-transformer-variant-of-Gen-QuickCheck-2-td3172136.html a mailing list discussion>.
@@ -21,6 +23,10 @@
     let (r1, r2) = Random.split r
     a <- unGenT m r1 n
     unGenT (k a) r2 n
+
+#if MIN_VERSION_base(4,13,0)
+instance (MonadFail m) => MonadFail (GenT m) where
+#endif
   fail msg = GenT (\_ _ -> fail msg)
 
 instance (Functor m, Monad m) => Applicative (GenT m) where
@@ -145,7 +151,7 @@
   growingElementsMay
 
 
--- * Non-partial functions resulting in Maybe
+-- * Total functions resulting in Maybe
 -------------------------
 
 -- | 
