diff --git a/Data/Generics/Geniplate.hs b/Data/Generics/Geniplate.hs
--- a/Data/Generics/Geniplate.hs
+++ b/Data/Generics/Geniplate.hs
@@ -611,7 +611,12 @@
 trBiTuple :: Bool -> Mode -> RetAp -> Exp -> Type -> Type -> [Type] -> U [Clause]
 trBiTuple seenStop doDescend ra f ft st ts = do
     vs <- mapM (const $ qNewName "_t") ts
+#if __GLASGOW_HASKELL__ >= 810
+-- `TupE` handles tuple sections since template-haskell 2.16.
+    let tupE = LamE (map VarP vs) $ TupE (map (Just . VarE) vs)
+#else
     let tupE = LamE (map VarP vs) $ TupE (map VarE vs)
+#endif
     c <- trMkArm seenStop doDescend ra f ft st [] TupP tupE ts
     return [c]
 
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,6 @@
+geniplate 0.7.7 (released 2020-04-01):
+* Support GHC 8.10.1
+
 geniplate 0.7.6 (released 2018-02-07):
 * Support GHC 8.4.1
   Contributed by Andrés Sicard-Ramírez.
diff --git a/geniplate-mirror.cabal b/geniplate-mirror.cabal
--- a/geniplate-mirror.cabal
+++ b/geniplate-mirror.cabal
@@ -1,5 +1,5 @@
 Name:           geniplate-mirror
-Version:        0.7.6
+Version:        0.7.7
 Synopsis:       Use Template Haskell to generate Uniplate-like functions.
 Description:    Use Template Haskell to generate Uniplate-like functions.
                 .
@@ -11,7 +11,7 @@
 License:        BSD3
 License-File:   LICENSE
 Author:         Lennart Augustsson
-Maintainer:     Dan Rosén, dan.rosen@gu.se
+Maintainer:     Dan Rosén <dan.rosen@gu.se>, Liang-Ting Chen <liang.ting.chen.tw@gmail.com>
 Copyright:      2014-2015 Lennart Augustsson
 Category:       Generics
 Build-type:     Simple
@@ -28,6 +28,6 @@
   location: https://github.com/danr/geniplate
 
 library
-  Build-Depends: base >= 4 && < 5.0, template-haskell < 2.14, mtl
+  Build-Depends: base >= 4 && < 5.0, template-haskell < 2.17, mtl
 
   Exposed-modules:      Data.Generics.Geniplate
