diff --git a/Data/Generics/SYB/WithClass/Derive.hs b/Data/Generics/SYB/WithClass/Derive.hs
--- a/Data/Generics/SYB/WithClass/Derive.hs
+++ b/Data/Generics/SYB/WithClass/Derive.hs
@@ -77,8 +77,8 @@
 #ifdef __HADDOCK__
  undefined
 #else
- do theDataTypeName <- newName "dataType"
-    constrNames <- replicateM (length cons) $ newName "constr"
+ do theDataTypeName <- newName $ "dataType_sybwc_" ++ show name
+    constrNames <- mapM (\(conName,_,_,_) -> newName $ "constr_sybwc_" ++ show conName) cons
     let constrExps = map varE constrNames
 
     let mkConstrDec :: Name -> Constructor -> Q [Dec]
diff --git a/syb-with-class.cabal b/syb-with-class.cabal
--- a/syb-with-class.cabal
+++ b/syb-with-class.cabal
@@ -1,5 +1,5 @@
 Name:               syb-with-class
-Version:            0.6.1.1
+Version:            0.6.1.2
 License:            BSD3
 License-file:       LICENSE
 Copyright:          2004 - 2008 The University of Glasgow, CWI,
@@ -16,7 +16,7 @@
     Classes, and Template Haskell code to generate instances, for the
     Scrap Your Boilerplate With Class system.    
 Category:           Data
-Tested-With:        GHC==6.12.1
+Tested-With:        GHC==7.2.1
 Build-Type:         Simple
 Cabal-Version:      >= 1.6
 
@@ -25,7 +25,7 @@
   location: http://patch-tag.com/r/Saizan/syb-with-class/
 
 Library 
-    Build-Depends:      base >= 3 && < 5, template-haskell >= 2.4 && < 2.6, bytestring, array, containers
+    Build-Depends:      base >= 3 && < 5, template-haskell >= 2.4 && < 2.7, bytestring, array, containers
     Exposed-modules:
         Data.Generics.SYB.WithClass.Basics
         Data.Generics.SYB.WithClass.Context
