diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,7 +1,12 @@
 * Hackage: <http://hackage.haskell.org/package/crackNum>
 * GitHub:  <http://github.com/LeventErkok/crackNum/>
 
-* Latest Hackage released version: 1.7, 2017-01-14
+* Latest Hackage released version: 1.8, 2017-01-15
+
+### Version 1.8, 2017-01-15
+
+  * Bump up FloatingHex dependency to >0.4, this enables
+    proper support for large doubles
 
 ### Version 1.7, 2017-01-14
 
diff --git a/Data/Numbers/CrackNum.hs b/Data/Numbers/CrackNum.hs
--- a/Data/Numbers/CrackNum.hs
+++ b/Data/Numbers/CrackNum.hs
@@ -198,14 +198,14 @@
                                     , ("qnan",      (integerToFP SP 0x7fc00000, integerToFP DP 0x7ff8000000000000))
                                     ]
         mbF, mbD :: Maybe FP
-        (mbF, mbD) = case (i `lookup` specials, rd i, rd i) of
-                       (Just (f, d), _        , _  ) -> (Just f,         Just d)
-                       (Nothing,     Just f, Just d) -> (Just (floatToFP f),  Just (doubleToFP d))
-                       (Nothing,     Just f, _     ) -> (Just (floatToFP f),  Nothing)
-                       (Nothing,     _,      Just d) -> (Nothing,        Just (doubleToFP d))
-                       _                             -> (Nothing,        Nothing)
+        (mbF, mbD) = case (i `lookup` specials, rd i :: Maybe Float, rd i :: Maybe Double) of
+                       (Just (f, d), _     , _     ) -> (Just f,             Just d)
+                       (Nothing,     Just f, Just d) -> (Just (floatToFP f), Just (doubleToFP d))
+                       (Nothing,     Just f, _     ) -> (Just (floatToFP f), Nothing)
+                       (Nothing,     _,      Just d) -> (Nothing,            Just (doubleToFP d))
+                       _                             -> (Nothing,            Nothing)
 
-        rd :: (Read a, RealFloat a) => String -> Maybe a
+        rd :: (Read a, FloatingHexReader a, RealFloat a) => String -> Maybe a
         rd s = case [v | (v, "") <- reads s] ++ catMaybes [readHFloat s] of
                  [v] -> Just v
                  _   -> Nothing
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
 
 ### Command line options:
 
-    crackNum v1.5, (c) Levent Erkok. Released with a BSD3 license.
+    crackNum v1.8, (c) Levent Erkok. Released with a BSD3 license.
     Usage: crackNum precision bit/hex-pattern
               --hp        16 bit half     precision
               --sp        32 bit single   precision
diff --git a/crackNum.cabal b/crackNum.cabal
--- a/crackNum.cabal
+++ b/crackNum.cabal
@@ -1,5 +1,5 @@
 Name:                crackNum
-Version:             1.7
+Version:             1.8
 Synopsis:            Crack various integer, floating-point data formats
 Description:         Crack HP, SP and DP floats and 8, 16, 32, 64 bit words and integers.
                      .
@@ -22,7 +22,7 @@
    main-is      : Data/Numbers/CrackNum/Main.hs
    ghc-options  : -Wall
    default-language: Haskell2010
-   build-depends: base >= 4 && < 5, ieee754, data-binary-ieee754, FloatingHex >= 0.2
+   build-depends: base >= 4 && < 5, ieee754, data-binary-ieee754, FloatingHex >= 0.4
    other-modules: Data.Numbers.CrackNum
                 , Data.Numbers.CrackNum.Utils
                 , Data.Numbers.CrackNum.Data
@@ -30,7 +30,7 @@
 Library
   ghc-options     : -Wall
   default-language: Haskell2010
-  Build-Depends   : base >= 4 && < 5, ieee754, data-binary-ieee754, FloatingHex >= 0.2
+  Build-Depends   : base >= 4 && < 5, ieee754, data-binary-ieee754, FloatingHex >= 0.4
   Exposed-modules : Data.Numbers.CrackNum
   other-modules   : Data.Numbers.CrackNum.Utils
                   , Data.Numbers.CrackNum.Data
