diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,11 @@
 Changes
 =======
 
+Version 0.1.2.2
+---------------
+
+Fix build with ghc 8
+
 Version 0.1.2.1
 ---------------
 
diff --git a/data-lens-light.cabal b/data-lens-light.cabal
--- a/data-lens-light.cabal
+++ b/data-lens-light.cabal
@@ -1,8 +1,8 @@
--- Initial data-lens-light.cabal generated by cabal init.  For further 
+-- Initial data-lens-light.cabal generated by cabal init.  For further
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                data-lens-light
-version:             0.1.2.1
+version:             0.1.2.2
 synopsis:            Simple lenses, minimum dependencies
 description:         See <https://github.com/feuerbach/data-lens-light/blob/master/README.md>
 homepage:            https://github.com/feuerbach/data-lens-light
@@ -10,7 +10,7 @@
 license-file:        LICENSE
 author:              Roman Cheplyaka
 maintainer:          roma@ro-che.info
--- copyright:           
+-- copyright:
 category:            Data, Lenses
 build-type:          Simple
 extra-source-files:
@@ -18,15 +18,19 @@
   CHANGELOG.md
 cabal-version:       >=1.10
 
+source-repository head
+  type:              git
+  location:          https://github.com/feuerbach/data-lens-light.git
+
 library
   ghc-options: -Wall
   exposed-modules:
     Data.Lens.Light
-  other-modules:       
+  other-modules:
     Data.Lens.Light.Core
     Data.Lens.Light.Template
     Data.Lens.Light.State
-  -- other-extensions:    
+  -- other-extensions:
   build-depends:
     base == 4.*,
     template-haskell,
diff --git a/src/Data/Lens/Light/Template.hs b/src/Data/Lens/Light/Template.hs
--- a/src/Data/Lens/Light/Template.hs
+++ b/src/Data/Lens/Light/Template.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE TemplateHaskell, CPP #-}
 
 {- |
 This module provides an automatic Template Haskell
@@ -84,8 +84,14 @@
 decMakeLens :: Name -> Dec -> (String -> Maybe String) -> Q [Dec]
 decMakeLens t dec namer = do
     (params, cons) <- case dec of
+#if MIN_VERSION_template_haskell(2,11,0)
+                 -- https://github.com/feuerbach/data-lens-light/issues/7
+                 DataD _ _ params _ cons' _ -> return (params, cons')
+                 NewtypeD _ _ params _ con' _ -> return (params, [con'])
+#else
                  DataD _ _ params cons' _ -> return (params, cons')
                  NewtypeD _ _ params con' _ -> return (params, [con'])
+#endif
                  _ -> fail $ errmsg t
     decs <- makeAccs params . nub $ concatMap namedFields cons
     when (null decs) $ qReport False nodefmsg
