diff --git a/compdata-param.cabal b/compdata-param.cabal
--- a/compdata-param.cabal
+++ b/compdata-param.cabal
@@ -1,5 +1,5 @@
 Name:			compdata-param
-Version:		0.8.0.1
+Version:		0.8.0.2
 Synopsis:            	Parametric Compositional Data Types
 Description:
 
@@ -26,7 +26,7 @@
 Maintainer:		paba@di.ku.dk
 Build-Type:		Simple
 Cabal-Version:          >=1.9.2
-bug-reports:            https://bitbucket.org/paba/compdata-param/issues
+bug-reports:            https://github.com/pa-ba/compdata-param/issues
 
 extra-source-files:
   -- test files
@@ -89,7 +89,7 @@
                         Data.Comp.Param.Multi.Derive.Injections
                         Data.Comp.Param.Multi.Derive.Projections
 
-  Build-Depends:	base >= 4.7, base < 5, template-haskell, mtl, transformers, compdata == 0.8.*
+  Build-Depends:	base >= 4.7, base < 5, template-haskell, mtl, transformers, compdata >= 0.8 && < 0.10
   hs-source-dirs:	src
   ghc-options:          -W
 
@@ -98,9 +98,9 @@
   Type:                 exitcode-stdio-1.0
   Main-is:		Tests.hs
   hs-source-dirs:	testsuite/tests examples
-  Build-Depends:        base >= 4.7, base < 5, template-haskell, mtl, transformers, compdata == 0.8.*, HUnit,
+  Build-Depends:        base >= 4.7, base < 5, template-haskell, mtl, transformers, compdata >= 0.8 && < 0.10, HUnit,
                         test-framework, test-framework-hunit, containers, compdata-param
 
 source-repository head
-  type:     hg
-  location: https://bitbucket.org/paba/compdata-param
+  type:     git
+  location: https://github.com/pa-ba/compdata-param
diff --git a/src/Data/Comp/Param/Derive/Ditraversable.hs b/src/Data/Comp/Param/Derive/Ditraversable.hs
--- a/src/Data/Comp/Param/Derive/Ditraversable.hs
+++ b/src/Data/Comp/Param/Derive/Ditraversable.hs
@@ -52,7 +52,6 @@
   return [InstanceD [] classType [mapMDecl,sequenceDecl]]
       where isFarg fArg funTy (constr, args) =
                 (constr, map (\t -> (t `containsType'` fArg, t `containsType'` funTy)) args)
-            checksAarg aArg (_,args) = any (`containsType` aArg) args
             filterVar _ _ nonFarg ([],[]) x  = nonFarg x
             filterVar farg _ _ ([depth],[]) x = farg depth x
             filterVar _ aarg _ ([_],[depth]) x = aarg depth x
@@ -74,12 +73,12 @@
                    let f = varE fn
                        fp = if hasFargs then VarP fn else WildP
                        conAp = foldl appE con allVars
-                       addDi False _ x = x
-                       addDi True d x = [|dimapM $(f)|]
-                       conBind (fun,d,x) y = [| $(iter d [|mapM|] (addDi fun d f)) $(varE x)  >>= $(lamE [varP x] y)|]
+                       addDi False x = x
+                       addDi True _ = [|dimapM $(f)|]
+                       conBind (fun,d,x) y = [| $(iter d [|mapM|] (addDi fun f)) $(varE x)  >>= $(lamE [varP x] y)|]
                    body <- foldr conBind [|return $conAp|] fvars
                    return $ Clause [fp, pat] (NormalB body) []
-            sequenceClause (con, pat,hasFargs,allVars, fvars) =
+            sequenceClause (con, pat,_hasFargs,allVars, fvars) =
                 do let conAp = foldl appE con allVars
                        varE' False _ x = varE x
                        varE' True d x = appE (iter d [|fmap|] [|disequence|]) (varE x)
diff --git a/src/Data/Comp/Param/Derive/SmartAConstructors.hs b/src/Data/Comp/Param/Derive/SmartAConstructors.hs
--- a/src/Data/Comp/Param/Derive/SmartAConstructors.hs
+++ b/src/Data/Comp/Param/Derive/SmartAConstructors.hs
@@ -30,13 +30,13 @@
  'injectA . dimap Var id' is automatically inserted. -}
 smartAConstructors :: Name -> Q [Dec]
 smartAConstructors fname = do
-    TyConI (DataD _cxt tname targs constrs _deriving) <- abstractNewtypeQ $ reify fname
+    TyConI (DataD _cxt _tname _targs constrs _deriving) <- abstractNewtypeQ $ reify fname
     let cons = map abstractConType constrs
-    liftM concat $ mapM (genSmartConstr (map tyVarBndrName targs) tname) cons
-        where genSmartConstr targs tname (name, args) = do
+    liftM concat $ mapM genSmartConstr cons
+        where genSmartConstr (name, args) = do
                 let bname = nameBase name
-                genSmartConstr' targs tname (mkName $ "iA" ++ bname) name args
-              genSmartConstr' targs tname sname name args = do
+                genSmartConstr' (mkName $ "iA" ++ bname) name args
+              genSmartConstr' sname name args = do
                 varNs <- newNames args "x"
                 varPr <- newName "_p"
                 let pats = map varP (varPr : varNs)
diff --git a/src/Data/Comp/Param/Multi/Derive/SmartAConstructors.hs b/src/Data/Comp/Param/Multi/Derive/SmartAConstructors.hs
--- a/src/Data/Comp/Param/Multi/Derive/SmartAConstructors.hs
+++ b/src/Data/Comp/Param/Multi/Derive/SmartAConstructors.hs
@@ -31,13 +31,13 @@
  'injectA . hdimap Var id' is automatically inserted. -}
 smartAConstructors :: Name -> Q [Dec]
 smartAConstructors fname = do
-    TyConI (DataD _cxt tname targs constrs _deriving) <- abstractNewtypeQ $ reify fname
+    TyConI (DataD _cxt _tname _targs constrs _deriving) <- abstractNewtypeQ $ reify fname
     let cons = map abstractConType constrs
-    liftM concat $ mapM (genSmartConstr (map tyVarBndrName targs) tname) cons
-        where genSmartConstr targs tname (name, args) = do
+    liftM concat $ mapM genSmartConstr cons
+        where genSmartConstr (name, args) = do
                 let bname = nameBase name
-                genSmartConstr' targs tname (mkName $ "iA" ++ bname) name args
-              genSmartConstr' targs tname sname name args = do
+                genSmartConstr' (mkName $ "iA" ++ bname) name args
+              genSmartConstr'  sname name args = do
                 varNs <- newNames args "x"
                 varPr <- newName "_p"
                 let pats = map varP (varPr : varNs)
