packages feed

ghc-api-compat-8.6: ghc-api-compat.cabal

name:                ghc-api-compat
version:             8.6
synopsis:            GHC-API compatibility helpers
description:
   GHC codebase is a moving target. This package provides
   compatibility for codes relying on an older GHC-API version.
license:             BSD3
license-file:        LICENSE
author:              Sylvain Henry
maintainer:          sylvain@haskus.fr
copyright:           Sylvain Henry 2020
category:            Development
build-type:          Simple
cabal-version:       1.22

library
   build-depends:
      ghc >= 8.6
   default-language:    Haskell2010

   if impl(ghc >= 8.10) && impl(ghc < 8.11)
      reexported-modules:
         GHC.Hs.PlaceHolder             as PlaceHolder

   if impl(ghc >= 8.10)
      reexported-modules:
           GHC.Hs.Binds                   as HsBinds
         , GHC.Hs.Decls                   as HsDecls
         , GHC.Hs.Doc                     as HsDoc
         , GHC.Hs.Dump                    as HsDumpAst
         , GHC.Hs.Expr                    as HsExpr
         , GHC.Hs.Extension               as HsExtension
         , GHC.Hs                         as HsSyn
         , GHC.Hs.ImpExp                  as HsImpExp
         , GHC.Hs.Instances               as HsInstances
         , GHC.Hs.Lit                     as HsLit
         , GHC.Hs.Pat                     as HsPat
         , GHC.Hs.Types                   as HsTypes
         , GHC.Hs.Utils                   as HsUtils

         , GHC.Platform.ARM64             as CodeGen.Platform.ARM64
         , GHC.Platform.ARM               as CodeGen.Platform.ARM
         , GHC.Platform.NoRegs            as CodeGen.Platform.NoRegs
         , GHC.Platform.PPC               as CodeGen.Platform.PPC
         , GHC.Platform.Regs              as CodeGen.Platform
         , GHC.Platform.SPARC             as CodeGen.Platform.SPARC
         , GHC.Platform.X86_64            as CodeGen.Platform.X86_64
         , GHC.Platform.X86               as CodeGen.Platform.X86

         , GHC.StgToCmm.ArgRep            as StgCmmArgRep
         , GHC.StgToCmm.Bind              as StgCmmBind
         , GHC.StgToCmm.CgUtils           as CgUtils
         , GHC.StgToCmm.Closure           as StgCmmClosure
         , GHC.StgToCmm.DataCon           as StgCmmCon
         , GHC.StgToCmm.Env               as StgCmmEnv
         , GHC.StgToCmm.Expr              as StgCmmExpr
         , GHC.StgToCmm.ExtCode           as StgCmmExtCode
         , GHC.StgToCmm.Foreign           as StgCmmForeign
         , GHC.StgToCmm.Heap              as StgCmmHeap
         , GHC.StgToCmm.Hpc               as StgCmmHpc
         , GHC.StgToCmm                   as StgCmm
         , GHC.StgToCmm.Layout            as StgCmmLayout
         , GHC.StgToCmm.Monad             as StgCmmMonad
         , GHC.StgToCmm.Prim              as StgCmmPrim
         , GHC.StgToCmm.Prof              as StgCmmProf
         , GHC.StgToCmm.Ticky             as StgCmmTicky
         , GHC.StgToCmm.Utils             as StgCmmUtils

         , GHC.ThToHs                     as Convert

         , GHC.HsToCore.PmCheck           as Check
         , GHC.HsToCore.PmCheck.Oracle    as PmOracle
         , GHC.HsToCore.PmCheck.Ppr       as PmPpr
         , GHC.HsToCore.PmCheck.Types     as PmTypes


   if impl(ghc >= 8.11)
      reexported-modules:
           GHC.Rename.Binds               as RnBinds
         , GHC.Rename.Env                 as RnEnv
         , GHC.Rename.Expr                as RnExpr
         , GHC.Rename.Fixity              as RnFixity
         , GHC.Rename.Doc                 as RnHsDoc
         , GHC.Rename.Names               as RnNames
         , GHC.Rename.Pat                 as RnPat
         , GHC.Rename.Source              as RnSource
         , GHC.Rename.Splice              as RnSplice
         , GHC.Rename.Types               as RnTypes
         , GHC.Rename.Unbound             as RnUnbound
         , GHC.Rename.Utils               as RnUtils

         , GHC.Types.RepType              as RepType

         , 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.Monad                  as CmmMonad
         , 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.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

         , GHC.Stg.Lift                   as StgLiftLams
         , GHC.Stg.Lift.Analysis          as StgLiftLams.Analysis
         , GHC.Stg.Lift.Monad             as StgLiftLams.LiftM

         , 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.Utils                as MkIface
         , 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.Linker             as Linker
         , GHC.Runtime.Linker.Types       as LinkerTypes
         , 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.CoreToByteCode             as ByteCodeGen

         , 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.Finder              as Finder
         , 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.Packages            as Packages
         , 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.Driver.Types               as HscTypes
         , 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