diff --git a/functor-combo.cabal b/functor-combo.cabal
--- a/functor-combo.cabal
+++ b/functor-combo.cabal
@@ -1,5 +1,5 @@
 Name:                functor-combo
-Version:             0.3.5
+Version:             0.3.6
 Cabal-Version:       >= 1.6
 Synopsis:            Functor combinators with tries & zippers
 Category:            Data
@@ -22,7 +22,13 @@
 Library
   hs-Source-Dirs:      src
   Extensions:
-  Build-Depends:       base<5, TypeCompose >= 0.9.4, containers, data-inttrie, lub, type-unary
+  Build-Depends:       base<5
+                     , base-orphans
+                     , containers
+                     , data-inttrie
+                     , lub
+                     , TypeCompose >= 0.9.4
+                     , type-unary
   Exposed-Modules:     
                        FunctorCombo.Strict
                        FunctorCombo.Functor
diff --git a/src/FunctorCombo/Functor.hs b/src/FunctorCombo/Functor.hs
--- a/src/FunctorCombo/Functor.hs
+++ b/src/FunctorCombo/Functor.hs
@@ -3,7 +3,6 @@
 {-# LANGUAGE TypeFamilies, CPP #-}
 
 {-# OPTIONS_GHC -Wall #-}
-{-# OPTIONS_GHC -fno-warn-orphans #-}
 ----------------------------------------------------------------------
 -- |
 -- Module      :  FunctorCombo.Functor
@@ -28,6 +27,7 @@
   ) where
 
 
+import Data.Orphans ()
 import Data.Monoid (Monoid(..))
 import Data.Foldable (Foldable(..))
 import Data.Traversable (Traversable(..))
@@ -111,11 +111,6 @@
 -- 
 -- TODO: replace explicit definition with deriving, when the compiler fix
 -- has been around for a while.
-
-#if !MIN_VERSION_base(4,7,0)
-deriving instance Foldable    (Const b)
-deriving instance Traversable (Const b)
-#endif
 
 -- instance Foldable (Const b) where
 --   -- fold (Const _) = mempty
