diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,8 @@
+0.7.1
+-----
+* Now compatible with GHC 7.10.1-rc1
+* Fixed a number of broken `#if` pragmas, fixing previously missing instances.
+
 0.7.0.1
 -------
 * Removed a couple of unnecessary `Fractional` constraints.
diff --git a/intervals.cabal b/intervals.cabal
--- a/intervals.cabal
+++ b/intervals.cabal
@@ -1,5 +1,5 @@
 name:              intervals
-version:           0.7.0.1
+version:           0.7.1
 synopsis:          Interval Arithmetic
 description:
   A 'Numeric.Interval.Interval' is a closed, convex set of floating point values.
diff --git a/src/Numeric/Interval/Internal.hs b/src/Numeric/Interval/Internal.hs
--- a/src/Numeric/Interval/Internal.hs
+++ b/src/Numeric/Interval/Internal.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE Rank2Types #-}
 {-# LANGUAGE DeriveDataTypeable #-}
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 {-# LANGUAGE DeriveGeneric #-}
 #endif
 {-# OPTIONS_HADDOCK not-home #-}
@@ -52,10 +52,14 @@
 
 import Control.Exception as Exception
 import Data.Data
-import Data.Foldable hiding (minimum, maximum, elem, notElem)
+import Data.Foldable hiding (minimum, maximum, elem, notElem
+#if __GLASGOW_HASKELL__ >= 710
+  , null
+#endif
+  )
 import Data.Function (on)
 import Data.Monoid
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 import GHC.Generics
 #endif
 import Numeric.Interval.Exception
@@ -66,7 +70,7 @@
 data Interval a = I !a !a | Empty deriving
   ( Data
   , Typeable
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
   , Generic
 #if __GLASGOW_HASKELL__ >= 706
   , Generic1
diff --git a/src/Numeric/Interval/Kaucher.hs b/src/Numeric/Interval/Kaucher.hs
--- a/src/Numeric/Interval/Kaucher.hs
+++ b/src/Numeric/Interval/Kaucher.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE Rank2Types #-}
 {-# LANGUAGE DeriveDataTypeable #-}
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 {-# LANGUAGE DeriveGeneric #-}
 #endif
 -----------------------------------------------------------------------------
@@ -53,11 +53,15 @@
 import Control.Exception as Exception
 import Data.Data
 import Data.Distributive
-import Data.Foldable hiding (minimum, maximum, elem, notElem)
+import Data.Foldable hiding (minimum, maximum, elem, notElem
+#if __GLASGOW_HASKELL__ >= 710
+  , null
+#endif
+  )
 import Data.Function (on)
 import Data.Monoid
 import Data.Traversable
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 import GHC.Generics
 #endif
 import Numeric.Interval.Exception
@@ -68,7 +72,7 @@
 data Interval a = I !a !a deriving
   ( Data
   , Typeable
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
   , Generic
 #if __GLASGOW_HASKELL__ >= 706
   , Generic1
diff --git a/src/Numeric/Interval/NonEmpty.hs b/src/Numeric/Interval/NonEmpty.hs
--- a/src/Numeric/Interval/NonEmpty.hs
+++ b/src/Numeric/Interval/NonEmpty.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE Rank2Types #-}
 {-# LANGUAGE DeriveDataTypeable #-}
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 {-# LANGUAGE DeriveGeneric #-}
 #endif
 -----------------------------------------------------------------------------
diff --git a/src/Numeric/Interval/NonEmpty/Internal.hs b/src/Numeric/Interval/NonEmpty/Internal.hs
--- a/src/Numeric/Interval/NonEmpty/Internal.hs
+++ b/src/Numeric/Interval/NonEmpty/Internal.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE Rank2Types #-}
 {-# LANGUAGE DeriveDataTypeable #-}
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 {-# LANGUAGE DeriveGeneric #-}
 #endif
 {-# OPTIONS_HADDOCK not-home #-}
@@ -52,7 +52,7 @@
 import Data.Foldable hiding (minimum, maximum, elem, notElem)
 import Data.Function (on)
 import Data.Monoid
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
 import GHC.Generics
 #endif
 import Numeric.Interval.Exception
@@ -63,7 +63,7 @@
 data Interval a = I !a !a deriving
   ( Data
   , Typeable
-#if defined(__GLASGOW_HASKELL) && __GLASGOW_HASKELL__ >= 704
+#if __GLASGOW_HASKELL__ >= 704
   , Generic
 #if __GLASGOW_HASKELL__ >= 706
   , Generic1
