packages feed

ghc-api-compat 8.10.7 → 9.0.1

raw patch · 3 files changed

+440/−5 lines, 3 filesdep +containersdep ~ghc

Dependencies added: containers

Dependency ranges changed: ghc

Files

ghc-api-compat.cabal view
@@ -1,5 +1,5 @@ name:                ghc-api-compat-version:             8.10.7+version:             9.0.1 synopsis:            GHC-API compatibility helpers description:    GHC codebase is a moving target. This package provides@@ -18,14 +18,17 @@  library    build-depends:-      ghc == 8.10.5 || == 8.10.6 || == 8.10.7-      , base < 5.0+      ghc == 9.0.*, base < 5.0    default-language:    Haskell2010 +   hs-source-dirs:   src+   exposed-modules:  Outputable DynFlags+   build-depends:+      containers >= 0.6.0 && <= 0.6.5+    reexported-modules:            GHC.Platform.AArch64           as CodeGen.Platform.ARM64-         , GHC.Hs.Types                   as HsTypes-         , GHC.Hs.PlaceHolder             as PlaceHolder+          , GHC.Hs.Binds                   as HsBinds          , GHC.Hs.Decls                   as HsDecls          , GHC.Hs.Doc                     as HsDoc@@ -74,3 +77,391 @@          , GHC.HsToCore.PmCheck.Oracle    as PmOracle          , GHC.HsToCore.PmCheck.Ppr       as PmPpr          , GHC.HsToCore.PmCheck.Types     as PmTypes++         , GHC.Rename.Doc                 as RnHsDoc+         , GHC.Utils.Encoding             as Encoding+         , GHC.Core.Map                   as CoreMap+         , GHC.Core.Ppr.TyThing           as PprTyThing+         , GHC.Driver.Types               as HscTypes+         , GHC.Driver.Finder              as Finder+         , GHC.CoreToByteCode             as ByteCodeGen+         , GHC.Runtime.Linker.Types       as LinkerTypes+         , GHC.Runtime.Linker             as Linker+         , GHC.SysTools.FileCleanup       as FileCleanup+         , GHC.SysTools.ExtraObj          as SysTools.ExtraObj+         , GHC.Cmm.Monad                  as CmmMonad+         , GHC.Builtin.RebindableNames++         , GHC.Rename.Bind                as RnBinds+         , GHC.Rename.Env                 as RnEnv+         , GHC.Rename.Expr                as RnExpr+         , GHC.Rename.Fixity              as RnFixity+         , GHC.Rename.Names               as RnNames+         , GHC.Rename.Pat                 as RnPat+         , GHC.Rename.Module              as RnSource+         , GHC.Rename.Splice              as RnSplice+         , GHC.Rename.HsType              as RnTypes+         , GHC.Rename.Unbound             as RnUnbound+         , GHC.Rename.Utils               as RnUtils++         , GHC.Builtin.Names              as PrelNames+         , GHC.Builtin.Names.TH           as THNames+         , GHC.Builtin.PrimOps            as PrimOp+         , GHC.Builtin.Types              as TysWiredIn+         , GHC.Builtin.Types.Literals     as TcTypeNats+         , GHC.Builtin.Types.Prim         as TysPrims+         , GHC.Builtin.Uniques            as KnownUniques+         , GHC.Builtin.Utils              as PrelInfo++         , GHC.Types.Annotations          as Annotations+         , GHC.Types.Avail                as Avail+         , GHC.Types.Basic                as Basic+         , GHC.Types.Basic                as BasicTypes+         , GHC.Types.CostCentre           as CostCentre+         , GHC.Types.CostCentre.State     as CostCentreState+         , GHC.Types.Cpr                  as Cpr+         , GHC.Types.Demand               as Demand+         , GHC.Types.FieldLabel           as FieldLabel+         , GHC.Types.ForeignCall          as ForeignCall+         , GHC.Types.Id                   as Id+         , GHC.Types.Id.Info              as Info+         , GHC.Types.Id.Make              as Make+         , GHC.Types.Literal              as Literal+         , GHC.Types.Name                 as Name+         , GHC.Types.Name.Cache           as NameCache+         , GHC.Types.Name.Env             as NameEnv+         , GHC.Types.Name.Occurrence      as OccName+         , GHC.Types.Name.Reader          as RdrName+         , GHC.Types.Name.Set             as NameSet+         , GHC.Types.Name.Shape           as NameShape+         , GHC.Types.RepType              as RepType+         , GHC.Types.SrcLoc               as SrcLoc+         , GHC.Types.Unique               as Unique+         , GHC.Types.Unique.DFM           as UniqDFM+         , GHC.Types.Unique.DSet          as UniqDSet+         , GHC.Types.Unique.FM            as UniqFM+         , GHC.Types.Unique.Set           as UniqSet+         , GHC.Types.Unique.Supply        as UniqSupply+         , GHC.Types.Var                  as Var+         , GHC.Types.Var.Env              as VarEnv+         , GHC.Types.Var.Set              as VarSet++         , GHC.Cmm.BlockId                as BlockId+         , GHC.Cmm.CLabel                 as CLabel+         , GHC.Cmm.CallConv               as CmmCallConv+         , GHC.Cmm.CommonBlockElim        as CmmCommonBlockElim+         , GHC.Cmm.ContFlowOpt            as CmmContFlowOpt+         , GHC.Cmm.Expr                   as CmmExpr+         , GHC.Cmm                        as Cmm+         , GHC.Cmm.Switch                 as CmmSwitch+         , GHC.Cmm.Switch.Implement       as CmmImplementSwitchPlans+         , GHC.Cmm.Info                   as CmmInfo+         , GHC.Cmm.Info.Build             as CmmBuildInfoTables+         , GHC.Cmm.LayoutStack            as CmmLayoutStack+         , GHC.Cmm.Lint                   as CmmLint+         , GHC.Cmm.Liveness               as CmmLive+         , GHC.Cmm.MachOp                 as CmmMachOp+         , GHC.Cmm.Node                   as CmmNode+         , GHC.Cmm.Opt                    as CmmOpt+         , GHC.Cmm.Pipeline               as CmmPipeline+         , GHC.Cmm.ProcPoint              as CmmProcPoint+         , GHC.Cmm.Sink                   as CmmSink+         , GHC.Cmm.Type                   as CmmType+         , GHC.Cmm.Utils                  as CmmUtils+         , GHC.Cmm.DebugBlock             as Debug+         , GHC.Cmm.Dataflow.Block         as Hoopl.Block+         , GHC.Cmm.Dataflow.Collections   as Hoopl.Collections+         , GHC.Cmm.Dataflow               as Hoopl.Dataflow+         , GHC.Cmm.Dataflow.Graph         as Hoopl.Graph+         , GHC.Cmm.Dataflow.Label         as Hoopl.Label+         , GHC.Cmm.Graph                  as MkGraph+         , GHC.Cmm.Ppr.Decl               as PprCmmDecl+         , GHC.Cmm.Ppr.Expr               as PprCmmExpr+         , GHC.Cmm.Ppr                    as PprCmm+         , GHC.Cmm.Lexer                  as CmmLex+         , GHC.Cmm.Parser                 as CmmParse++         , GHC.CmmToC                     as PprC++         , GHC.Data.Bag                   as Bag+         , GHC.Data.Bitmap                as BitMap+         , GHC.Data.BooleanFormula        as BooleanFormula+         , GHC.Data.EnumSet               as EnumSet+         , GHC.Data.FastMutInt            as FastMutInt+         , GHC.Data.FastString            as FastString+         , GHC.Data.FastString.Env        as FastStringEnv+         , GHC.Data.FiniteMap             as FiniteMap+         , GHC.Data.Graph.Base            as GraphBase+         , GHC.Data.Graph.Color           as GraphColor+         , GHC.Data.Graph.Directed        as DiGraph+         , GHC.Data.Graph.Ops             as GraphOps+         , GHC.Data.Graph.Ppr             as GraphPpr+         , GHC.Data.Graph.UnVar           as UnVarGraph+         , GHC.Data.IOEnv                 as IOEnv+         , GHC.Data.List.SetOps           as ListSetOpts+         , GHC.Data.Maybe                 as Maybes+         , GHC.Data.OrdList               as OrdList+         , GHC.Data.Pair                  as Pair+         , GHC.Data.Stream                as Stream+         , GHC.Data.StringBuffer          as StringBuffer+         , GHC.Data.TrieMap               as TrieMap++         , GHC.Unit.State                 as Packages+         , GHC.Unit.Info                  as PackageConfig+         , GHC.Unit.Module                as Module++         , GHC.Hs.Type                    as HsTypes++         , GHC.HsToCore                   as Desugar+         , GHC.HsToCore.Coverage          as Coverage+         , GHC.HsToCore.Arrows            as DsArrows+         , GHC.HsToCore.Binds             as DsBinds+         , GHC.HsToCore.Foreign.Call      as DsCCall+         , GHC.HsToCore.Foreign.Decl      as DsForeign+         , GHC.HsToCore.Expr              as DsExpr+         , GHC.HsToCore.GuardedRHSs       as DsGRHSs+         , GHC.HsToCore.ListComp          as DsListComp+         , GHC.HsToCore.Quote             as DsMeta+         , GHC.HsToCore.Monad             as DsMonad+         , GHC.HsToCore.Usage             as DsUsage+         , GHC.HsToCore.Utils             as DsUtils+         , GHC.HsToCore.Docs              as ExtractDocs+         , GHC.HsToCore.Match             as Match+         , GHC.HsToCore.Match.Constructor as MatchCon+         , GHC.HsToCore.Match.Literal     as MatchLit++         , GHC.Stg.Pipeline               as SimplStg+         , GHC.Stg.CSE                    as StgCse+         , GHC.Stg.Stats                  as StgStats+         , GHC.Stg.Unarise                as UnariseStg+         , GHC.Stg.FVs                    as StgFVs+         , GHC.Stg.Lint                   as StgLint+         , GHC.Stg.Subst                  as StgSubst+         , GHC.Stg.Syntax                 as StgSyn++         -- Expose as two modules as they apparently got merged+         , GHC.Settings                   as Settings+         , GHC.Settings                   as ToolSettings+         , GHC.Settings.Config            as Config+         , GHC.Settings.Constants         as Constants+         , GHC.Settings.IO                as SysTools.Settings++         , GHC.Stg.Lift                   as StgLiftLams+         , GHC.Stg.Lift.Analysis          as StgLiftLams.Analysis+         , GHC.Stg.Lift.Monad             as StgLiftLams.LiftM++         , GHC.SysTools                   as SysTools+         , GHC.SysTools.Ar                as Ar+         , GHC.SysTools.BaseDir           as SysTools.BaseDir+         , GHC.SysTools.Elf               as Elf+         , GHC.SysTools.Info              as SysTools.Info+         , GHC.SysTools.Process           as SysTools.Process+         , GHC.SysTools.Tasks             as SysTools.Tasks+         , GHC.SysTools.Terminal          as SysTools.Terminal++         , GHC.CoreToStg                  as CoreToStg+         , GHC.CoreToStg.Prep             as CorePrep++         , GHC.Iface.Binary               as BinIface+         , GHC.Iface.Env                  as IfaceEnv+         , GHC.Iface.Syntax               as IfaceSyn+         , GHC.Iface.Type                 as IfaceType+         , GHC.Iface.Load                 as LoadIface+         , GHC.Iface.Make                 as MkIface+         , GHC.Iface.Recomp+         , GHC.Iface.Rename               as RnModIface+         , GHC.Iface.Tidy                 as TidyPgm++         , GHC.Iface.Ext.Ast              as HieAst+         , GHC.Iface.Ext.Binary           as HieBin+         , GHC.Iface.Ext.Debug            as HieDebug+         , GHC.Iface.Ext.Types            as HieTypes+         , GHC.Iface.Ext.Utils            as HieUtils++         , GHC.IfaceToCore                as TcIface+         , GHC.CoreToIface                as ToIface++         , GHC.Data.Bitmap                as Bitmap++         , GHC.Runtime.Debugger           as Debugger+         , GHC.Runtime.Interpreter        as GHCi+         , GHC.Runtime.Loader             as DynamicLoading+         , GHC.Runtime.Eval               as InteractiveEval+         , GHC.Runtime.Eval.Types         as InteractiveEvalTypes+         , GHC.Runtime.Heap.Layout        as SMRep+         , GHC.Runtime.Heap.Inspect       as RtClosureInspect++         , GHC.ByteCode.Asm               as ByteCodeAsm+         , GHC.ByteCode.Instr             as ByteCodeInstr+         , GHC.ByteCode.InfoTable         as ByteCodeItbls+         , GHC.ByteCode.Linker            as ByteCodeLink+         , GHC.ByteCode.Types             as ByteCodeTypes++         , GHC.Llvm.MetaData              as Llvm.MetaData+         , GHC.Llvm.Ppr                   as Llvm.PpLlvm+         , GHC.Llvm.Types                 as Llvm.Types+         , GHC.Llvm.Syntax                as Llvm.AbsSyn+         , GHC.Llvm                       as Llvm+         , GHC.CmmToLlvm                  as LlvmCodeGen+         , GHC.CmmToLlvm.Mangler          as LlvmMangler+         , GHC.CmmToLlvm.Base             as LlvmCodeGen.Base+         , GHC.CmmToLlvm.CodeGen          as LlvmCodeGen.CodeGen+         , GHC.CmmToLlvm.Data             as LlvmCodeGen.Data+         , GHC.CmmToLlvm.Ppr              as LlvmCodeGen.Ppr+         , GHC.CmmToLlvm.Regs             as LlvmCodeGen.Regs+         , GHC.Driver.Backpack.Syntax     as BkpSyn+         , GHC.Driver.Backpack            as DriverBkp+         , GHC.Driver.CmdLine             as CmdLineParser+         , GHC.Driver.CodeOutput          as CodeOutput+         , GHC.Driver.MakeFile            as DriverMkDepend+         , GHC.Driver.Main                as HscMain+         , GHC.Driver.Make                as GhcMake+         , GHC.Driver.Hooks               as Hooks+        --  , GHC.Driver.Session             as DynFlags+         , GHC.Driver.Phases              as DriverPhases+         , GHC.Driver.Pipeline            as DriverPipeline+         , GHC.Driver.Pipeline.Monad      as PipelineMonad+         , GHC.Driver.Plugins             as Plugins+         , GHC.Driver.Monad               as GhcMonad+         , GHC.Prelude                    as GhcPrelude+         , GHC.Plugins                    as GhcPlugins+         , GHC                            as GHC+         , GHC.CmmToAsm                          as AsmCodeGen+         , GHC.CmmToAsm.BlockLayout              as BlockLayout+         , GHC.CmmToAsm.CFG                      as CFG+         , GHC.CmmToAsm.CFG.Dominators           as Dominators+         , GHC.CmmToAsm.CPrim                    as CPrim+         , GHC.CmmToAsm.Dwarf.Constants          as Dwarf.Constants+         , GHC.CmmToAsm.Dwarf                    as Dwarf+         , GHC.CmmToAsm.Dwarf.Types              as Dwarf.Types+         , GHC.CmmToAsm.Format                   as Format+         , GHC.CmmToAsm.Instr                    as Instruction+         , GHC.CmmToAsm.Monad                    as NCGMonad+         , GHC.CmmToAsm.PIC                      as PIC+         , GHC.CmmToAsm.Ppr                      as PprBase+         , GHC.CmmToAsm.Reg.Graph.Base           as RegAlloc.Graph.ArchBase+         , GHC.CmmToAsm.Reg.Graph.X86            as RegAlloc.Graph.ArchX86+         , GHC.CmmToAsm.Reg.Graph.Coalesce       as RegAlloc.Graph.Coalesce+         , GHC.CmmToAsm.Reg.Graph                as RegAlloc.Graph.Main+         , GHC.CmmToAsm.Reg.Graph.SpillClean     as RegAlloc.Graph.SpillClean+         , GHC.CmmToAsm.Reg.Graph.SpillCost      as RegAlloc.Graph.SpillCost+         , GHC.CmmToAsm.Reg.Graph.Spill          as RegAlloc.Graph.Spill+         , GHC.CmmToAsm.Reg.Graph.Stats          as RegAlloc.Graph.Stats+         , GHC.CmmToAsm.Reg.Graph.TrivColorable  as RegAlloc.Graph.TrivColorable+         , GHC.CmmToAsm.Reg.Linear.Base          as RegAlloc.Linear.Base+         , GHC.CmmToAsm.Reg.Linear.JoinToTargets as RegAlloc.Linear.JoinToTargets+         , GHC.CmmToAsm.Reg.Linear               as RegAlloc.Linear.Main+         , GHC.CmmToAsm.Reg.Linear.StackMap      as RegAlloc.Linear.StackMap+         , GHC.CmmToAsm.Reg.Linear.State         as RegAlloc.Linear.State+         , GHC.CmmToAsm.Reg.Linear.Stats         as RegAlloc.Linear.Stats+         , GHC.CmmToAsm.Reg.Linear.FreeRegs      as RegAlloc.Linear.FreeRegs+         , GHC.CmmToAsm.Reg.Linear.PPC           as RegAlloc.Linear.PPC.FreeRegs+         , GHC.CmmToAsm.Reg.Linear.SPARC         as RegAlloc.Linear.SPARC.FreeRegs+         , GHC.CmmToAsm.Reg.Linear.X86_64        as RegAlloc.Linear.X86_64.FreeRegs+         , GHC.CmmToAsm.Reg.Linear.X86           as RegAlloc.Linear.X86.FreeRegs+         , GHC.Platform.Reg                      as Reg+         , GHC.Platform.Reg.Class                as RegClass+         , GHC.CmmToAsm.Reg.Liveness             as RegAlloc.Liveness+         , GHC.CmmToAsm.Reg.Target               as TargetReg+         , GHC.CmmToAsm.PPC.CodeGen              as PPC.CodeGen+         , GHC.CmmToAsm.PPC.Cond                 as PPC.Cond+         , GHC.CmmToAsm.PPC.Instr                as PPC.Instr+         , GHC.CmmToAsm.PPC.Ppr                  as PPC.Ppr+         , GHC.CmmToAsm.PPC.RegInfo              as PPC.RegInfo+         , GHC.CmmToAsm.PPC.Regs                 as PPC.Regs+         , GHC.CmmToAsm.SPARC.AddrMode           as SPARC.AddrMode+         , GHC.CmmToAsm.SPARC.Base               as SPARC.Base+         , GHC.CmmToAsm.SPARC.CodeGen.Amode      as SPARC.CodeGen.Amode+         , GHC.CmmToAsm.SPARC.CodeGen.Base       as SPARC.CodeGen.Base+         , GHC.CmmToAsm.SPARC.CodeGen.CondCode   as SPARC.CodeGen.CondCode+         , GHC.CmmToAsm.SPARC.CodeGen.Expand     as SPARC.CodeGen.Expand+         , GHC.CmmToAsm.SPARC.CodeGen.Gen32      as SPARC.CodeGen.Gen32+         , GHC.CmmToAsm.SPARC.CodeGen.Gen64      as SPARC.CodeGen.Gen64+         , GHC.CmmToAsm.SPARC.CodeGen            as SPARC.CodeGen+         , GHC.CmmToAsm.SPARC.CodeGen.Sanity     as SPARC.CodeGen.Sanity+         , GHC.CmmToAsm.SPARC.Cond               as SPARC.Cond+         , GHC.CmmToAsm.SPARC.Imm                as SPARC.Imm+         , GHC.CmmToAsm.SPARC.Instr              as SPARC.Instr+         , GHC.CmmToAsm.SPARC.Ppr                as SPARC.Ppr+         , GHC.CmmToAsm.SPARC.Regs               as SPARC.Regs+         , GHC.CmmToAsm.SPARC.ShortcutJump       as SPARC.ShortcutJump+         , GHC.CmmToAsm.SPARC.Stack              as SPARC.Stack+         , GHC.CmmToAsm.X86.CodeGen              as X86.CodeGen+         , GHC.CmmToAsm.X86.Cond                 as X86.Cond+         , GHC.CmmToAsm.X86.Instr                as X86.Instr+         , GHC.CmmToAsm.X86.Ppr                  as X86.Ppr+         , GHC.CmmToAsm.X86.RegInfo              as X86.RegInfo+         , GHC.CmmToAsm.X86.Regs                 as X86.Regs++         , GHC.Core                              as CoreSyn+         , GHC.Core.Class                        as Class+         , GHC.Core.Coercion                     as Coercion+         , GHC.Core.Coercion.Axiom               as CoAxion+         , GHC.Core.Coercion.Opt                 as OptCoercion+         , GHC.Core.ConLike                      as ConLike+         , GHC.Core.DataCon                      as DataCon+         , GHC.Core.FVs                          as CoreFVs+         , GHC.Core.FamInstEnv                   as FamInstEnv+         , GHC.Core.InstEnv                      as InstEnv+         , GHC.Core.Lint                         as CoreLint+         , GHC.Core.Make                         as MkCore+         , GHC.Core.Multiplicity++         , GHC.Core.Opt.Arity                    as CoreArity+         , GHC.Core.Opt.Monad                    as CoreMonad++         , GHC.Core.PatSyn                       as PatSyn+         , GHC.Core.Ppr                          as PprCore+         , GHC.Core.Predicate                    as Predicate+         , GHC.Core.Rules                        as Rules+         , GHC.Core.Seq                          as CoreSeq+         , GHC.Core.SimpleOpt                    as CoreOpt+         , GHC.Core.Stats                        as CoreStats+         , GHC.Core.Subst                        as CoreSubst+         , GHC.Core.Tidy                         as CoreTidy++         , GHC.Core.TyCo.FVs                     as TyCoFVs+         , GHC.Core.TyCo.Ppr                     as TyCoPpr+         , GHC.Core.TyCo.Rep                     as TyCoRep+         , GHC.Core.TyCo.Subst                   as TyCoSubst+         , GHC.Core.TyCo.Tidy                    as TyCoTidy++         , GHC.Core.TyCon                        as TyCon+         , GHC.Core.Type                         as Type+         , GHC.Core.Unfold                       as CoreUnfold+         , GHC.Core.Unify                        as Unify+         , GHC.Core.UsageEnv+         , GHC.Core.Utils                        as CoreUtils++         , GHC.Utils.Asm                         as AsmUtils+         , GHC.Utils.Binary                      as Binary+         , GHC.Utils.BufHandle                   as BufWrite+         , GHC.Utils.CliOption                   as CliOption+         , GHC.Utils.Error                       as ErrUtils+         , GHC.Utils.Exception                   as Exception+         , GHC.Utils.FV                          as FV+         , GHC.Utils.Fingerprint                 as Fingerprint+         , GHC.Utils.IO.Unsafe                   as FastFunctions+         , GHC.Utils.Json                        as Json+         , GHC.Utils.Lexeme                      as Lexeme+         , GHC.Utils.Misc                        as Util+         , GHC.Utils.Monad                       as MonadUtils+         , GHC.Utils.Monad.State                 as State+         -- Customly exposed+         -- , GHC.Utils.Outputable                  as Outputable+         , GHC.Utils.Panic                       as Panic+         , GHC.Utils.Panic.Plain                 as PlainPanic+         , GHC.Utils.Ppr                         as Pretty+         , GHC.Utils.Ppr.Colour                  as PprColour++         , GHC.Parser                            as Parser+         , GHC.Parser.CharClass                  as CType+         , GHC.Parser.Header                     as HeaderInfo+         , GHC.Parser.Lexer                      as Lexer+         , GHC.Parser.PostProcess                as RdrHsSyn++         , GHC.Tc.Types                          as TcRnTypes+         , GHC.Tc.Utils.Zonk                     as TcHsSyn+         , GHC.Tc.Utils.Env                      as TcEnv+         , GHC.Tc.Utils.Monad                   as TcRnMonad+         , GHC.Driver.Backend
+ src/DynFlags.hs view
@@ -0,0 +1,30 @@+{-# LANGUAGE CPP #-}+module DynFlags+  ( module GHC.Driver.Session,+    Way(..),+    wayRTSOnly,+    wayGeneralFlags,+    wayUnsetGeneralFlags,+    buildTag,+    dynamicGhc,+    hostFullWays,+    interpWays,+  )+where++import Data.Set (Set)+import GHC.Driver.Session+#if MIN_VERSION_GLASGOW_HASKELL(9,2,0,0)+import GHC.Platform.Ways+#else+import GHC.Driver.Ways+#endif++buildTag :: DynFlags -> String+buildTag = waysBuildTag . ways++dynamicGhc :: Bool+dynamicGhc = hostIsDynamic++interpWays :: Set Way+interpWays = hostFullWays
+ src/Outputable.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE CPP #-}++module Outputable+    ( module GHC.Utils.Outputable+#if !MIN_VERSION_GLASGOW_HASKELL(9,0,0,0)+    -- now exported again from Outputable+    , initSDocContext+#endif+    ) where++import GHC.Utils.Outputable+#if !MIN_VERSION_GLASGOW_HASKELL(9,0,0,0)+import GHC.Driver.Session (initSDocContext)+#endif