diff --git a/Control/Category/Dual.hs b/Control/Category/Dual.hs
--- a/Control/Category/Dual.hs
+++ b/Control/Category/Dual.hs
@@ -37,7 +37,7 @@
   Dual f . Dual g = Dual (g . f)
 
 #ifdef __GLASGOW_HASKELL__
-instance Typeable2 (~>) => Typeable2 (Dual (~>)) where
+instance Typeable2 k => Typeable2 (Dual k) where
   typeOf2 tfab = mkTyConApp dataTyCon [typeOf2 (undefined `asDualArgsType` tfab)]
     where asDualArgsType :: f b a -> t f a b -> f b a
           asDualArgsType = const
@@ -58,7 +58,7 @@
 dataDataType = mkDataType "Control.Category.Dual.Dual" [dualConstr]
 {-# NOINLINE dataDataType #-}
 
-instance (Typeable2 (~>), Data a, Data b, Data (b ~> a)) => Data (Dual (~>) a b) where
+instance (Typeable2 k, Data a, Data b, Data (k b a)) => Data (Dual k a b) where
   gfoldl f z (Dual a) = z Dual `f` a
   toConstr _ = dualConstr
   gunfold k z c = case constrIndex c of
diff --git a/categories.cabal b/categories.cabal
--- a/categories.cabal
+++ b/categories.cabal
@@ -1,6 +1,6 @@
 name:          categories
 category:      Control
-version:       1.0.3
+version:       1.0.4
 license:       BSD3
 cabal-version: >= 1.10
 license-file:  LICENSE
@@ -14,6 +14,7 @@
 description:   Categories
 build-type:    Simple
 extra-source-files: .travis.yml
+tested-with:   GHC == 7.4.1, GHC == 7.6.1
 
 flag Optimize
   description: Enable optimizations
