diff --git a/hscope.cabal b/hscope.cabal
--- a/hscope.cabal
+++ b/hscope.cabal
@@ -1,5 +1,5 @@
 Name:           hscope
-Version:        0.4.2
+Version:        0.4.3
 License:        BSD3
 License-File:   COPYING
 Category:       source-tools
@@ -41,8 +41,8 @@
 Executable hscope
     Main-Is: HScope.hs
     GHC-Options: -Wall
-    Build-Depends: base >= 4.7 && < 4.9
-                             , haskell-src-exts == 1.16.*, mtl, pure-cdb
+    Build-Depends: base >= 4.7 && < 5
+                             , haskell-src-exts == 1.17.*, mtl, pure-cdb
                              , uniplate >= 1.6.12 && < 1.7, cereal
                              , vector, bytestring, process, deepseq, directory, cpphs
     Default-Language: Haskell2010
diff --git a/t/Build.hs b/t/Build.hs
--- a/t/Build.hs
+++ b/t/Build.hs
@@ -55,7 +55,7 @@
     like l4 "parseFlags ::"
     like l4 "groupBy (==)"
 
-    res6 <- liftIO $ readProcess hpath [ "-b", "-f", td ++ "/foo.out", "t/files/a.c" ] ""
+    res6 <- liftIO $ readProcess hpath [ "-b", "-f", td ++ "/foo.out", "-X", "NamedFieldPuns", "t/files/a.c" ] ""
     like res6 "Parse error: 0"
     like res6 "a.c"
 
diff --git a/t/files/garrs.hs b/t/files/garrs.hs
--- a/t/files/garrs.hs
+++ b/t/files/garrs.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 data G a where
     A :: a -> G Int
     B :: b -> G Bool
