diff --git a/hspec-contrib.cabal b/hspec-contrib.cabal
--- a/hspec-contrib.cabal
+++ b/hspec-contrib.cabal
@@ -1,5 +1,5 @@
 name:             hspec-contrib
-version:          0.4.0
+version:          0.5.0
 license:          MIT
 license-file:     LICENSE
 copyright:        (c) 2011-2017 Simon Hengel,
@@ -27,7 +27,7 @@
       src
   build-depends:
       base == 4.*
-    , hspec-core
+    , hspec-core >= 2.5.0
     , HUnit
   exposed-modules:
       Test.Hspec.Contrib.Retry
diff --git a/src/Test/Hspec/Contrib/Retry.hs b/src/Test/Hspec/Contrib/Retry.hs
--- a/src/Test/Hspec/Contrib/Retry.hs
+++ b/src/Test/Hspec/Contrib/Retry.hs
@@ -11,13 +11,11 @@
   type Arg (Retry a) = Arg a
   evaluateExample (Retry n example) a b c
     | n > 1 = do
-        r <- safeEvaluateExample example a b c
-        case r of
-          Right result -> case result of
-            Success{} -> return result
-            Pending{} -> return result
-            Failure{} -> retry
-          Left _ -> retry
+        result <- safeEvaluateExample example a b c
+        case result of
+          Result _ Success{} -> return result
+          Result _ Pending{} -> return result
+          Result _ Failure{} -> retry
     | otherwise = evaluateExample example a b c
     where
       retry = evaluateExample (Retry (pred n) example) a b c
