diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # Changelog for ghc-lib-parser-ex
 
+## 8.8.5.8 released 2020-03-17
+- New module `Language.Haskell.GhclibParserEx.GHC.Driver.Flags`
+  - Export `Bounded` instance for `Language`
+    (https://github.com/shayne-fletcher/ghc-lib-parser-ex/issues/30)
+
 ## 8.8.5.7 released 2020-03-16
 - From `Language.Haskell.GhclibParserEx.Fixity`:
   - Supply missing fixities (https://github.com/ndmitchell/hlint/issues/913)
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.8.5.7
+version:        8.8.5.8
 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
@@ -33,6 +33,7 @@
       Language.Haskell.GhclibParserEx.Dump
       Language.Haskell.GhclibParserEx.DynFlags
       Language.Haskell.GhclibParserEx.Fixity
+      Language.Haskell.GhclibParserEx.GHC.Driver.Flags
       Language.Haskell.GhclibParserEx.GHC.Hs.Expr
       Language.Haskell.GhclibParserEx.GHC.Hs.Pat
       Language.Haskell.GhclibParserEx.GHC.Hs.Types
diff --git a/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs
new file mode 100644
--- /dev/null
+++ b/src/Language/Haskell/GhclibParserEx/GHC/Driver/Flags.hs
@@ -0,0 +1,16 @@
+{-# LANGUAGE CPP #-}
+{-# OPTIONS_GHC -Wno-orphans #-}
+#include "ghclib_api.h"
+module Language.Haskell.GhclibParserEx.GHC.Driver.Flags () where
+
+#if defined(GHCLIB_API_811)
+import GHC.Driver.Session
+#else
+import DynFlags
+#endif
+
+-- Oprhan instance until
+-- https://gitlab.haskell.org/ghc/ghc/merge_requests/2905 lands.
+instance Bounded Language where
+  minBound = Haskell98
+  maxBound = Haskell2010
diff --git a/test/Test.hs b/test/Test.hs
--- a/test/Test.hs
+++ b/test/Test.hs
@@ -3,6 +3,7 @@
 
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE TypeApplications #-}
 #include "ghclib_api.h"
 
 import Test.Tasty
@@ -13,7 +14,7 @@
 import qualified System.FilePath as FilePath
 import System.IO.Extra
 import Control.Monad
-import Data.List
+import Data.List.Extra
 import Data.Maybe
 
 import Language.Haskell.GhclibParserEx.Config
@@ -24,6 +25,7 @@
 import Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances
 import Language.Haskell.GhclibParserEx.GHC.Hs.Expr
 import Language.Haskell.GhclibParserEx.GHC.Hs.Pat
+import Language.Haskell.GhclibParserEx.GHC.Driver.Flags()
 
 #if defined (GHCLIB_API_811) || defined (GHCLIB_API_810)
 import GHC.Hs
@@ -299,4 +301,6 @@
       Just (_, (es, ds)) <- return $ find (\(e, _) -> e == DeriveTraversable) extensionImplications
       assertBool "no extensions disabled" (null ds)
       assertBool "two extensions enabled" $ DeriveFunctor `elem` es && DeriveFoldable `elem` es
+  , testCase "check instance Bounded Language" $ assertBool "compile time test" (not (null (enumerate @Language)))
+  , testCase "check instace Ord Extension'" $ assertBool "compile time test" (minBound @Extension < maxBound @Extension)
   ]
