diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,6 +1,15 @@
 # Changelog for ghc-lib-parser-ex
 
-## 0.20201001 released 2020-09-01
+## 0.20210101 released 2021-01-01
+- Update to `ghc-lib-0.20210101`
+
+## 8.10.0.17 released 2020-12-20
+- Update to ghc-8.10.3.
+
+## 0.20201101 released 2020-11-01
+- Update to `ghc-lib-0.20201101`
+
+## 0.20201001 released 2020-10-01
 - Update to `ghc-lib-0.20201001`
 - `GHCLIB_API_811` -> `GHCLIB_API_HEAD`
 - Add support for `GHCLIB_API_900`
diff --git a/ghc-lib-parser-ex.cabal b/ghc-lib-parser-ex.cabal
--- a/ghc-lib-parser-ex.cabal
+++ b/ghc-lib-parser-ex.cabal
@@ -1,6 +1,6 @@
 cabal-version: >= 1.18
 name:           ghc-lib-parser-ex
-version:        0.20201201
+version:        0.20210101
 description:    Please see the README on GitHub at <https://github.com/shayne-fletcher/ghc-lib-parser-ex#readme>
 homepage:       https://github.com/shayne-fletcher/ghc-lib-parser-ex#readme
 bug-reports:    https://github.com/shayne-fletcher/ghc-lib-parser-ex/issues
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Hs/Pat.hs b/src/Language/Haskell/GhclibParserEx/GHC/Hs/Pat.hs
--- a/src/Language/Haskell/GhclibParserEx/GHC/Hs/Pat.hs
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Hs/Pat.hs
@@ -31,7 +31,12 @@
 #endif
 
 patToStr :: LPat GhcPs -> String
-#if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900)
+#if defined (GHCLIB_API_HEAD)
+patToStr (L _ (ConPat _ (L _ x) (PrefixCon [] []))) | occNameString (rdrNameOcc x) == "True" = "True"
+patToStr (L _ (ConPat _ (L _ x) (PrefixCon [] []))) | occNameString (rdrNameOcc x) == "False" = "False"
+patToStr (L _ (ConPat _ (L _ x) (PrefixCon [] []))) | occNameString (rdrNameOcc x) == "[]" = "[]"
+patToStr _ = ""
+#elif defined (GHCLIB_API_900)
 patToStr (L _ (ConPat _ (L _ x) (PrefixCon []))) | occNameString (rdrNameOcc x) == "True" = "True"
 patToStr (L _ (ConPat _ (L _ x) (PrefixCon []))) | occNameString (rdrNameOcc x) == "False" = "False"
 patToStr (L _ (ConPat _ (L _ x) (PrefixCon []))) | occNameString (rdrNameOcc x) == "[]" = "[]"
@@ -54,7 +59,9 @@
 #if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900) || defined (GHCLIB_API_810)
   noLoc $
 #endif
-#if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900)
+#if defined (GHCLIB_API_HEAD)
+    ConPat noExtField (noLoc true_RDR) (PrefixCon [] [])
+#elif defined (GHCLIB_API_900)
     ConPat noExtField (noLoc true_RDR) (PrefixCon [])
 #else
     ConPatIn (noLoc true_RDR) (PrefixCon [])
@@ -63,7 +70,9 @@
 #if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900) || defined (GHCLIB_API_810)
   noLoc $
 #endif
-#if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900)
+#if defined (GHCLIB_API_HEAD)
+    ConPat noExtField (noLoc false_RDR) (PrefixCon [] [])
+#elif defined (GHCLIB_API_900)
     ConPat noExtField (noLoc false_RDR) (PrefixCon [])
 #else
     ConPatIn (noLoc false_RDR) (PrefixCon [])
@@ -72,7 +81,9 @@
 #if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900) || defined (GHCLIB_API_810)
   noLoc $
 #endif
-#if defined (GHCLIB_API_HEAD) || defined (GHCLIB_API_900)
+#if defined (GHCLIB_API_HEAD)
+    ConPat noExtField (noLoc $ nameRdrName nilDataConName) (PrefixCon [] [])
+#elif defined (GHCLIB_API_900)
     ConPat noExtField (noLoc $ nameRdrName nilDataConName) (PrefixCon [])
 #else
     ConPatIn (noLoc $ nameRdrName nilDataConName) (PrefixCon [])
