diff --git a/src/Lens/Family/Total.hs b/src/Lens/Family/Total.hs
--- a/src/Lens/Family/Total.hs
+++ b/src/Lens/Family/Total.hs
@@ -1,6 +1,7 @@
 {-# LANGUAGE DefaultSignatures #-}
 {-# LANGUAGE FlexibleContexts  #-}
 {-# LANGUAGE TypeOperators     #-}
+{-# LANGUAGE CPP               #-}
 
 -- | This module lets you exhaustively pattern match on types using
 -- `Lens.Family.Lens`es, `Lens.Family.Traversal`s, or `Lens.Family.Prism`s.
@@ -101,6 +102,9 @@
     ) where
 
 import Data.Void (Void, absurd)
+#if __GLASGOW_HASKELL__ >= 710
+import Data.Function ((&))
+#endif
 import GHC.Generics
 
 -- | A type class for uninhabited types
@@ -159,8 +163,9 @@
     Left  l -> f l
     Right r -> g r
 
+#if __GLASGOW_HASKELL__ < 710
 -- | Operator for post-fix function application
 (&) :: a -> (a -> b) -> b
 x & f = f x
-
 infixl 1 &
+#endif
diff --git a/total.cabal b/total.cabal
--- a/total.cabal
+++ b/total.cabal
@@ -1,7 +1,8 @@
 Name: total
-Version: 1.0.4
+Version: 1.0.5
 Cabal-Version: >=1.8.0.2
 Build-Type: Simple
+Tested-With: GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.1
 License: BSD3
 License-File: LICENSE
 Copyright: 2015 Gabriel Gonzalez
@@ -20,7 +21,7 @@
 Library
     Hs-Source-Dirs: src
     Build-Depends:
-        base     >= 4       && < 4.9,
+        base     >= 4       && < 5  ,
         void     >= 0.4     && < 0.8
     Exposed-Modules: Lens.Family.Total
-    GHC-Options: -O2 -Wall
+    GHC-Options: -Wall
