diff --git a/hspec-core.cabal b/hspec-core.cabal
--- a/hspec-core.cabal
+++ b/hspec-core.cabal
@@ -1,9 +1,9 @@
--- This file has been generated from package.yaml by hpack version 0.17.0.
+-- This file has been generated from package.yaml by hpack version 0.18.0.
 --
 -- see: https://github.com/sol/hpack
 
 name:             hspec-core
-version:          2.4.3
+version:          2.4.4
 license:          MIT
 license-file:     LICENSE
 copyright:        (c) 2011-2017 Simon Hengel,
@@ -40,7 +40,7 @@
     , deepseq
     , HUnit >= 1.2.5
     , QuickCheck >= 2.5.1
-    , quickcheck-io
+    , quickcheck-io >= 0.2.0
     , hspec-expectations == 0.8.2.*
     , async >= 2
     , call-stack
@@ -93,7 +93,7 @@
     , deepseq
     , HUnit >= 1.2.5
     , QuickCheck >= 2.5.1
-    , quickcheck-io
+    , quickcheck-io >= 0.2.0
     , hspec-expectations == 0.8.2.*
     , async >= 2
     , call-stack
diff --git a/src/Test/Hspec/Core/Example.hs b/src/Test/Hspec/Core/Example.hs
--- a/src/Test/Hspec/Core/Example.hs
+++ b/src/Test/Hspec/Core/Example.hs
@@ -185,10 +185,12 @@
       sanitizeFailureMessage r = let m = QC.output r in strip $
 #if MIN_VERSION_QuickCheck(2,7,0)
         case QC.theException r of
-          Just e -> let numbers = formatNumbers r in
-            "uncaught exception: " ++ formatException e ++ " " ++ numbers ++ "\n" ++ case lines m of
-              x:xs | x == (exceptionPrefix ++ show e ++ "' " ++ numbers ++ ": ") -> unlines xs
-              _ -> m
+          Just e -> case E.fromException e :: Maybe (HUnit.HUnitFailure) of
+            Just _ -> (addFalsifiable . stripFailed) m
+            Nothing -> let numbers = formatNumbers r in
+              "uncaught exception: " ++ formatException e ++ " " ++ numbers ++ "\n" ++ case lines m of
+                x:xs | x == (exceptionPrefix ++ show e ++ "' " ++ numbers ++ ": ") -> unlines xs
+                _ -> m
           Nothing ->
 #endif
             (addFalsifiable . stripFailed) m
