diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,16 @@
 # Changelog for ghc-lib-parser-ex
 
+## 8.10.0.16 released 2020-08-08
+- Update to ghc-8.10.2.
+
+## 0.20200801 released 2020-08-01
+- Update to `ghc-lib-0.20200801`
+
+## 8.8.6.1 released 2020-07-16
+
+## 0.20200704 released 2020-07-04
+- New function `isImportQualifiedPost`
+
 ## 8.10.0.15 released 2020-07-04
 - New function `isImportQualifiedPost`
 
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:        8.10.0.15
+version:        8.10.0.16
 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/Fixity.hs b/src/Language/Haskell/GhclibParserEx/Fixity.hs
--- a/src/Language/Haskell/GhclibParserEx/Fixity.hs
+++ b/src/Language/Haskell/GhclibParserEx/Fixity.hs
@@ -213,7 +213,11 @@
 #else
 fixitiesFromModule :: Located (HsModule GhcPs) -> [(String, Fixity)]
 #endif
+#if defined(GHCLIB_API_811)
+fixitiesFromModule (L _ (HsModule _ _ _ _ decls _ _)) = concatMap f decls
+#else
 fixitiesFromModule (L _ (HsModule _ _ _ decls _ _)) = concatMap f decls
+#endif
   where
     f :: LHsDecl GhcPs -> [(String, Fixity)]
     f (L _ (SigD _ (FixSig _ (FixitySig _ ops (Fixity _ p dir))))) =
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs
--- a/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs
@@ -3,14 +3,14 @@
 #include "ghclib_api.h"
 module Language.Haskell.GhclibParserEx.GHC.Driver.Flags () where
 
-#if defined(GHCLIB_API_811)
-import GHC.Driver.Session
-#else
+#if !defined(GHCLIB_API_811)
 import DynFlags
 #endif
 
--- Oprhan instance until
--- https://gitlab.haskell.org/ghc/ghc/merge_requests/2905 lands.
+-- This instance landed in
+-- https://gitlab.haskell.org/ghc/ghc/merge_requests/2905.
+#if defined(GHCLIB_API_808) || defined(GHCLIB_API_810)
 instance Bounded Language where
   minBound = Haskell98
   maxBound = Haskell2010
+#endif
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Driver/Session.hs b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Session.hs
--- a/src/Language/Haskell/GhclibParserEx/GHC/Driver/Session.hs
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Session.hs
@@ -7,14 +7,16 @@
 module Language.Haskell.GhclibParserEx.GHC.Driver.Session(
       readExtension
     , extensionImplications
-    -- Copied from DynFlags (see
-    -- https://gitlab.haskell.org/ghc/ghc/merge_requests/2654).
+-- Landed in https://gitlab.haskell.org/ghc/ghc/merge_requests/2654.
+#if defined (GHCLIB_API_808) || defined (GHCLIB_API_810)
     , TurnOnFlag, turnOn, turnOff, impliedGFlags, impliedOffGFlags, impliedXFlags
-    --
+#endif
     , parsePragmasIntoDynFlags
   ) where
 
+#if defined(GHCLIB_API_808) || defined(GHCLIB_API_810)
 import qualified GHC.LanguageExtensions as LangExt
+#endif
 #if defined (GHCLIB_API_811)
 import GHC.Utils.Panic
 import GHC.Parser.Header
@@ -32,14 +34,11 @@
 import Data.List
 import Data.Maybe
 import qualified Data.Map as Map
-#if !defined(GHCLIB_API_811)
+-- Landed in https://gitlab.haskell.org/ghc/ghc/merge_requests/2707.
+#if defined (GHCLIB_API_808) || defined (GHCLIB_API_810)
 import Data.Function -- For `compareOn`.
--- Oprhan instance until
--- https://gitlab.haskell.org/ghc/ghc/merge_requests/2707 lands.
 instance Ord Extension where
   compare = compare `on` fromEnum
-#else
--- Update : It's landed.
 #endif
 
 -- | Parse a GHC extension.
@@ -56,7 +55,10 @@
       [(show a, ([c | b], [c | not b]))
         | (a, flag, c) <- impliedXFlags, let b = flag == turnOn]
 
--- Copied from 'ghc/compiler/main/DynFlags.hs'.
+-- Landed in
+-- https://gitlab.haskell.org/ghc/ghc/merge_requests/2654. Copied from
+-- 'ghc/compiler/main/DynFlags.hs'.
+#if defined(GHCLIB_API_808) || defined(GHCLIB_API_810)
 
 type TurnOnFlag = Bool   -- True  <=> we are turning the flag on
                          -- False <=> we are turning the flag off
@@ -109,7 +111,7 @@
     , (LangExt.TypeInType,       turnOn, LangExt.PolyKinds)
     , (LangExt.TypeInType,       turnOn, LangExt.KindSignatures)
 
-#if defined(GHCLIB_API_811) || defined(GHCLIB_API_810)
+#if defined(GHCLIB_API_810)
     -- Standalone kind signatures are a replacement for CUSKs.
     , (LangExt.StandaloneKindSignatures, turnOff, LangExt.CUSKs)
 #endif
@@ -143,8 +145,7 @@
     , (LangExt.TemplateHaskell, turnOn, LangExt.TemplateHaskellQuotes)
     , (LangExt.Strict, turnOn, LangExt.StrictData)
   ]
-
---
+#endif
 
 parsePragmasIntoDynFlags :: DynFlags
                          -> ([Extension], [Extension])
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Hs/Expr.hs b/src/Language/Haskell/GhclibParserEx/GHC/Hs/Expr.hs
--- a/src/Language/Haskell/GhclibParserEx/GHC/Hs/Expr.hs
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Hs/Expr.hs
@@ -99,7 +99,11 @@
 isParComp = \case ParStmt{} -> True; _ -> False
 
 isMDo :: HsStmtContext Name -> Bool
+#if defined(GHCLIB_API_811)
+isMDo = \case MDoExpr _ -> True; _ -> False
+#else
 isMDo = \case MDoExpr -> True; _ -> False
+#endif
 
 isTupleSection :: HsTupArg GhcPs -> Bool
 isTupleSection = \case Missing{} -> True; _ -> False
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Settings/Config.hs b/src/Language/Haskell/GhclibParserEx/GHC/Settings/Config.hs
--- a/src/Language/Haskell/GhclibParserEx/GHC/Settings/Config.hs
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Settings/Config.hs
@@ -72,11 +72,16 @@
       , platformHasSubsectionsViaSymbols=False
       , platformIsCrossCompiling=False
       , platformLeadingUnderscore=False
+      , platformTablesNextToCode=False
+      , platformConstants=platformConstants
       ,
 #endif
-#if defined (GHCLIB_API_811) || defined (GHCLIB_API_810)
-        platformWordSize = PW8
-      , platformMini = PlatformMini {platformMini_arch=ArchUnknown, platformMini_os=OSUnknown}
+#if defined (GHCLIB_API_811)
+        platformWordSize=PW8
+      , platformArchOS=ArchOS {archOS_arch=ArchUnknown, archOS_OS=OSUnknown}
+#elif defined (GHCLIB_API_810)
+        platformWordSize=PW8
+      , platformMini=PlatformMini {platformMini_arch=ArchUnknown, platformMini_os=OSUnknown}
 #else
         platformWordSize=8
       , platformOS=OSUnknown
