ghc-lib: The GHC API, decoupled from GHC versions

[ bsd3, development, library ] [ Propose Tags ] [ Report a vulnerability ]

A package equivalent to the ghc package, but which can be loaded on many compiler versions.

Modules

[Last Documentation]

  • ApiAnnotation
  • Ar
  • AsmUtils
  • Bag
  • BinFingerprint
  • Binary
  • BooleanFormula
  • BufWrite
  • BuildTyCl
  • CliOption
  • ClsInst
  • Config
  • Constants
  • Constraint
  • Ctype
  • Digraph
  • Elf
  • Encoding
  • EnumSet
  • ErrUtils
  • Exception
  • FV
  • FamInst
  • FastFunctions
  • FastMutInt
  • FastString
  • FastStringEnv
  • FileCleanup
  • FileSettings
  • Fingerprint
  • FiniteMap
  • FlagChecker
  • FunDeps
  • GHC
    • GHC.BaseDir
    • ByteCode
      • GHC.ByteCode.Asm
      • GHC.ByteCode.InfoTable
      • GHC.ByteCode.Instr
      • GHC.ByteCode.Linker
      • GHC.ByteCode.Types
    • GHC.Cmm
      • GHC.Cmm.BlockId
      • GHC.Cmm.CLabel
      • GHC.Cmm.CallConv
      • GHC.Cmm.CommonBlockElim
      • GHC.Cmm.ContFlowOpt
      • GHC.Cmm.Dataflow
        • GHC.Cmm.Dataflow.Block
        • GHC.Cmm.Dataflow.Collections
        • GHC.Cmm.Dataflow.Graph
        • GHC.Cmm.Dataflow.Label
      • GHC.Cmm.DebugBlock
      • GHC.Cmm.Expr
      • GHC.Cmm.Graph
      • GHC.Cmm.Info
        • GHC.Cmm.Info.Build
      • GHC.Cmm.LayoutStack
      • GHC.Cmm.Lexer
      • GHC.Cmm.Lint
      • GHC.Cmm.Liveness
      • GHC.Cmm.MachOp
      • GHC.Cmm.Monad
      • GHC.Cmm.Node
      • GHC.Cmm.Opt
      • GHC.Cmm.Parser
      • GHC.Cmm.Pipeline
      • GHC.Cmm.Ppr
        • GHC.Cmm.Ppr.Decl
        • GHC.Cmm.Ppr.Expr
      • GHC.Cmm.ProcPoint
      • GHC.Cmm.Sink
      • GHC.Cmm.Switch
        • GHC.Cmm.Switch.Implement
      • GHC.Cmm.Type
      • GHC.Cmm.Utils
    • GHC.CmmToAsm
      • GHC.CmmToAsm.BlockLayout
      • GHC.CmmToAsm.CFG
        • GHC.CmmToAsm.CFG.Dominators
      • GHC.CmmToAsm.CPrim
      • GHC.CmmToAsm.Config
      • GHC.CmmToAsm.Dwarf
        • GHC.CmmToAsm.Dwarf.Constants
        • GHC.CmmToAsm.Dwarf.Types
      • GHC.CmmToAsm.Format
      • GHC.CmmToAsm.Instr
      • GHC.CmmToAsm.Monad
      • GHC.CmmToAsm.PIC
      • PPC
        • GHC.CmmToAsm.PPC.CodeGen
        • GHC.CmmToAsm.PPC.Cond
        • GHC.CmmToAsm.PPC.Instr
        • GHC.CmmToAsm.PPC.Ppr
        • GHC.CmmToAsm.PPC.RegInfo
        • GHC.CmmToAsm.PPC.Regs
      • GHC.CmmToAsm.Ppr
      • Reg
        • GHC.CmmToAsm.Reg.Graph
          • GHC.CmmToAsm.Reg.Graph.Base
          • GHC.CmmToAsm.Reg.Graph.Coalesce
          • GHC.CmmToAsm.Reg.Graph.Spill
          • GHC.CmmToAsm.Reg.Graph.SpillClean
          • GHC.CmmToAsm.Reg.Graph.SpillCost
          • GHC.CmmToAsm.Reg.Graph.Stats
          • GHC.CmmToAsm.Reg.Graph.TrivColorable
          • GHC.CmmToAsm.Reg.Graph.X86
        • GHC.CmmToAsm.Reg.Linear
          • GHC.CmmToAsm.Reg.Linear.Base
          • GHC.CmmToAsm.Reg.Linear.FreeRegs
          • GHC.CmmToAsm.Reg.Linear.JoinToTargets
          • GHC.CmmToAsm.Reg.Linear.PPC
          • GHC.CmmToAsm.Reg.Linear.SPARC
          • GHC.CmmToAsm.Reg.Linear.StackMap
          • GHC.CmmToAsm.Reg.Linear.State
          • GHC.CmmToAsm.Reg.Linear.Stats
          • GHC.CmmToAsm.Reg.Linear.X86
          • GHC.CmmToAsm.Reg.Linear.X86_64
        • GHC.CmmToAsm.Reg.Liveness
        • GHC.CmmToAsm.Reg.Target
      • SPARC
        • GHC.CmmToAsm.SPARC.AddrMode
        • GHC.CmmToAsm.SPARC.Base
        • GHC.CmmToAsm.SPARC.CodeGen
          • GHC.CmmToAsm.SPARC.CodeGen.Amode
          • GHC.CmmToAsm.SPARC.CodeGen.Base
          • GHC.CmmToAsm.SPARC.CodeGen.CondCode
          • GHC.CmmToAsm.SPARC.CodeGen.Expand
          • GHC.CmmToAsm.SPARC.CodeGen.Gen32
          • GHC.CmmToAsm.SPARC.CodeGen.Gen64
          • GHC.CmmToAsm.SPARC.CodeGen.Sanity
        • GHC.CmmToAsm.SPARC.Cond
        • GHC.CmmToAsm.SPARC.Imm
        • GHC.CmmToAsm.SPARC.Instr
        • GHC.CmmToAsm.SPARC.Ppr
        • GHC.CmmToAsm.SPARC.Regs
        • GHC.CmmToAsm.SPARC.ShortcutJump
        • GHC.CmmToAsm.SPARC.Stack
      • X86
        • GHC.CmmToAsm.X86.CodeGen
        • GHC.CmmToAsm.X86.Cond
        • GHC.CmmToAsm.X86.Instr
        • GHC.CmmToAsm.X86.Ppr
        • GHC.CmmToAsm.X86.RegInfo
        • GHC.CmmToAsm.X86.Regs
    • GHC.CmmToC
    • GHC.CmmToLlvm
      • GHC.CmmToLlvm.Base
      • GHC.CmmToLlvm.CodeGen
      • GHC.CmmToLlvm.Data
      • GHC.CmmToLlvm.Mangler
      • GHC.CmmToLlvm.Ppr
      • GHC.CmmToLlvm.Regs
    • GHC.Core
      • GHC.Core.Arity
      • GHC.Core.Class
      • GHC.Core.Coercion
        • GHC.Core.Coercion.Axiom
        • GHC.Core.Coercion.Opt
      • GHC.Core.ConLike
      • GHC.Core.DataCon
      • GHC.Core.FVs
      • GHC.Core.FamInstEnv
      • GHC.Core.InstEnv
      • GHC.Core.Lint
      • GHC.Core.Make
      • GHC.Core.Map
      • Op
        • GHC.Core.Op.CSE
        • GHC.Core.Op.CallArity
        • GHC.Core.Op.ConstantFold
        • GHC.Core.Op.CprAnal
        • GHC.Core.Op.DmdAnal
        • GHC.Core.Op.Exitify
        • GHC.Core.Op.FloatIn
        • GHC.Core.Op.FloatOut
        • GHC.Core.Op.LiberateCase
        • GHC.Core.Op.Monad
        • GHC.Core.Op.OccurAnal
        • GHC.Core.Op.SetLevels
        • GHC.Core.Op.Simplify
          • GHC.Core.Op.Simplify.Driver
          • GHC.Core.Op.Simplify.Env
          • GHC.Core.Op.Simplify.Monad
          • GHC.Core.Op.Simplify.Utils
        • GHC.Core.Op.SpecConstr
        • GHC.Core.Op.Specialise
        • GHC.Core.Op.StaticArgs
        • GHC.Core.Op.Tidy
        • GHC.Core.Op.WorkWrap
          • GHC.Core.Op.WorkWrap.Lib
      • GHC.Core.PatSyn
      • GHC.Core.Ppr
        • GHC.Core.Ppr.TyThing
      • GHC.Core.Predicate
      • GHC.Core.Rules
      • GHC.Core.Seq
      • GHC.Core.SimpleOpt
      • GHC.Core.Stats
      • GHC.Core.Subst
      • TyCo
        • GHC.Core.TyCo.FVs
        • GHC.Core.TyCo.Ppr
        • GHC.Core.TyCo.Rep
        • GHC.Core.TyCo.Subst
        • GHC.Core.TyCo.Tidy
      • GHC.Core.TyCon
      • GHC.Core.Type
      • GHC.Core.Unfold
      • GHC.Core.Unify
      • GHC.Core.Utils
    • GHC.CoreToByteCode
    • GHC.CoreToIface
    • GHC.CoreToStg
      • GHC.CoreToStg.Prep
    • Data
      • GHC.Data.Bitmap
    • Driver
      • GHC.Driver.Backpack
        • GHC.Driver.Backpack.Syntax
      • GHC.Driver.CmdLine
      • GHC.Driver.CodeOutput
      • GHC.Driver.Finder
      • GHC.Driver.Flags
      • GHC.Driver.Hooks
      • GHC.Driver.Main
      • GHC.Driver.Make
      • GHC.Driver.MakeFile
      • GHC.Driver.Monad
      • GHC.Driver.Packages
      • GHC.Driver.Phases
      • GHC.Driver.Pipeline
        • GHC.Driver.Pipeline.Monad
      • GHC.Driver.Plugins
      • GHC.Driver.Session
      • GHC.Driver.Types
      • GHC.Driver.Ways
    • Exts
      • GHC.Exts.Heap
        • GHC.Exts.Heap.ClosureTypes
        • GHC.Exts.Heap.Closures
        • GHC.Exts.Heap.Constants
        • GHC.Exts.Heap.InfoTable
          • GHC.Exts.Heap.InfoTable.Types
        • GHC.Exts.Heap.InfoTableProf
        • GHC.Exts.Heap.Utils
    • GHC.ForeignSrcLang
      • GHC.ForeignSrcLang.Type
    • GHC.HandleEncoding
    • GHC.Hs
      • GHC.Hs.Binds
      • GHC.Hs.Decls
      • GHC.Hs.Doc
      • GHC.Hs.Dump
      • GHC.Hs.Expr
      • GHC.Hs.Extension
      • GHC.Hs.ImpExp
      • GHC.Hs.Instances
      • GHC.Hs.Lit
      • GHC.Hs.Pat
      • GHC.Hs.Types
      • GHC.Hs.Utils
    • GHC.HsToCore
      • GHC.HsToCore.Arrows
      • GHC.HsToCore.Binds
      • GHC.HsToCore.Coverage
      • GHC.HsToCore.Docs
      • GHC.HsToCore.Expr
      • Foreign
        • GHC.HsToCore.Foreign.Call
        • GHC.HsToCore.Foreign.Decl
      • GHC.HsToCore.GuardedRHSs
      • GHC.HsToCore.ListComp
      • GHC.HsToCore.Match
        • GHC.HsToCore.Match.Constructor
        • GHC.HsToCore.Match.Literal
      • GHC.HsToCore.Monad
      • GHC.HsToCore.PmCheck
        • GHC.HsToCore.PmCheck.Oracle
        • GHC.HsToCore.PmCheck.Ppr
        • GHC.HsToCore.PmCheck.Types
      • GHC.HsToCore.Quote
      • GHC.HsToCore.Usage
      • GHC.HsToCore.Utils
    • Iface
      • GHC.Iface.Binary
      • GHC.Iface.Env
      • Ext
        • GHC.Iface.Ext.Ast
        • GHC.Iface.Ext.Binary
        • GHC.Iface.Ext.Debug
        • GHC.Iface.Ext.Types
        • GHC.Iface.Ext.Utils
      • GHC.Iface.Load
      • GHC.Iface.Make
      • GHC.Iface.Recomp
      • GHC.Iface.Rename
      • GHC.Iface.Syntax
      • GHC.Iface.Tidy
      • GHC.Iface.Type
    • GHC.IfaceToCore
    • GHC.LanguageExtensions
      • GHC.LanguageExtensions.Type
    • GHC.Lexeme
    • GHC.Llvm
      • GHC.Llvm.MetaData
      • GHC.Llvm.Ppr
      • GHC.Llvm.Syntax
      • GHC.Llvm.Types
    • GHC.PackageDb
    • GHC.Platform
      • GHC.Platform.ARM
      • GHC.Platform.ARM64
      • GHC.Platform.Host
      • GHC.Platform.NoRegs
      • GHC.Platform.PPC
      • GHC.Platform.Reg
        • GHC.Platform.Reg.Class
      • GHC.Platform.Regs
      • GHC.Platform.S390X
      • GHC.Platform.SPARC
      • GHC.Platform.X86
      • GHC.Platform.X86_64
    • GHC.Plugins
    • Rename
      • GHC.Rename.Binds
      • GHC.Rename.Doc
      • GHC.Rename.Env
      • GHC.Rename.Expr
      • GHC.Rename.Fixity
      • GHC.Rename.Names
      • GHC.Rename.Pat
      • GHC.Rename.Source
      • GHC.Rename.Splice
      • GHC.Rename.Types
      • GHC.Rename.Unbound
      • GHC.Rename.Utils
    • Runtime
      • GHC.Runtime.Debugger
      • GHC.Runtime.Eval
        • GHC.Runtime.Eval.Types
      • Heap
        • GHC.Runtime.Heap.Inspect
        • GHC.Runtime.Heap.Layout
      • GHC.Runtime.Interpreter
        • GHC.Runtime.Interpreter.Types
      • GHC.Runtime.Linker
        • GHC.Runtime.Linker.Types
      • GHC.Runtime.Loader
    • GHC.Serialized
    • GHC.Settings
    • Stg
      • GHC.Stg.CSE
      • GHC.Stg.DepAnal
      • GHC.Stg.FVs
      • GHC.Stg.Lift
        • GHC.Stg.Lift.Analysis
        • GHC.Stg.Lift.Monad
      • GHC.Stg.Lint
      • GHC.Stg.Pipeline
      • GHC.Stg.Stats
      • GHC.Stg.Subst
      • GHC.Stg.Syntax
      • GHC.Stg.Unarise
    • GHC.StgToCmm
      • GHC.StgToCmm.ArgRep
      • GHC.StgToCmm.Bind
      • GHC.StgToCmm.CgUtils
      • GHC.StgToCmm.Closure
      • GHC.StgToCmm.DataCon
      • GHC.StgToCmm.Env
      • GHC.StgToCmm.Expr
      • GHC.StgToCmm.ExtCode
      • GHC.StgToCmm.Foreign
      • GHC.StgToCmm.Heap
      • GHC.StgToCmm.Hpc
      • GHC.StgToCmm.Layout
      • GHC.StgToCmm.Monad
      • GHC.StgToCmm.Prim
      • GHC.StgToCmm.Prof
      • GHC.StgToCmm.Ticky
      • GHC.StgToCmm.Utils
    • GHC.ThToHs
    • Types
      • GHC.Types.Annotations
      • GHC.Types.Avail
      • GHC.Types.Basic
      • GHC.Types.CostCentre
        • GHC.Types.CostCentre.State
      • GHC.Types.Cpr
      • GHC.Types.Demand
      • GHC.Types.FieldLabel
      • GHC.Types.ForeignCall
      • GHC.Types.Id
        • GHC.Types.Id.Info
        • GHC.Types.Id.Make
      • GHC.Types.Literal
      • GHC.Types.Module
      • GHC.Types.Name
        • GHC.Types.Name.Cache
        • GHC.Types.Name.Env
        • GHC.Types.Name.Occurrence
        • GHC.Types.Name.Reader
        • GHC.Types.Name.Set
        • GHC.Types.Name.Shape
      • GHC.Types.RepType
      • GHC.Types.SrcLoc
      • GHC.Types.Unique
        • GHC.Types.Unique.DFM
        • GHC.Types.Unique.DSet
        • GHC.Types.Unique.FM
        • GHC.Types.Unique.Set
        • GHC.Types.Unique.Supply
      • GHC.Types.Var
        • GHC.Types.Var.Env
        • GHC.Types.Var.Set
    • GHC.UniqueSubdir
    • Utils
      • GHC.Utils.Lexeme
    • GHC.Version
  • GHCi
    • GHCi.BinaryArray
    • GHCi.BreakArray
    • GHCi.CreateBCO
    • GHCi.FFI
    • GHCi.InfoTable
    • GHCi.Message
    • GHCi.ObjLink
    • GHCi.RemoteTypes
    • GHCi.ResolvedBCO
    • GHCi.Run
    • GHCi.Signals
    • GHCi.StaticPtrTable
    • GHCi.TH
      • GHCi.TH.Binary
  • GhcNameVersion
  • GhcPrelude
  • GraphBase
  • GraphColor
  • GraphOps
  • GraphPpr
  • HaddockUtils
  • HeaderInfo
  • HscStats
  • IOEnv
  • Inst
  • Json
  • KnownUniques
  • Language
    • Haskell
      • Language.Haskell.TH
        • Language.Haskell.TH.LanguageExtensions
        • Language.Haskell.TH.Lib
          • Language.Haskell.TH.Lib.Internal
          • Language.Haskell.TH.Lib.Map
        • Language.Haskell.TH.Ppr
        • Language.Haskell.TH.PprLib
        • Language.Haskell.TH.Quote
        • Language.Haskell.TH.Syntax
  • Lexer
  • ListSetOps
  • Maybes
  • MonadUtils
  • OrdList
  • Outputable
  • Pair
  • Panic
  • Parser
  • Paths_ghc_lib
  • PlainPanic
  • PlatformConstants
  • PprColour
  • PrelInfo
  • PrelNames
  • Pretty
  • PrimOp
  • RdrHsSyn
  • Settings
  • SizedSeq
  • State
  • StaticPtrTable
  • Stream
  • StringBuffer
  • SysTools
    • SysTools.BaseDir
    • SysTools.ExtraObj
    • SysTools.Info
    • SysTools.Process
    • SysTools.Settings
    • SysTools.Tasks
    • SysTools.Terminal
  • THNames
  • TcAnnotations
  • TcArrows
  • TcBackpack
  • TcBinds
  • TcCanonical
  • TcClassDcl
  • TcDefaults
  • TcDeriv
  • TcDerivInfer
  • TcDerivUtils
  • TcEnv
  • TcErrors
  • TcEvTerm
  • TcEvidence
  • TcExpr
  • TcFlatten
  • TcForeign
  • TcGenDeriv
  • TcGenFunctor
  • TcGenGenerics
  • TcHoleErrors
  • TcHoleFitTypes
  • TcHsSyn
  • TcHsType
  • TcInstDcls
  • TcInteract
  • TcMType
  • TcMatches
  • TcOrigin
  • TcPat
  • TcPatSyn
  • TcPluginM
  • TcRnDriver
  • TcRnExports
  • TcRnMonad
  • TcRnTypes
  • TcRules
  • TcSMonad
  • TcSigs
  • TcSimplify
  • TcSplice
  • TcTyClsDecls
  • TcTyDecls
  • TcType
  • TcTypeNats
  • TcTypeable
  • TcUnify
  • TcValidity
  • ToolSettings
  • TrieMap
  • TysPrim
  • TysWiredIn
  • UnVarGraph
  • UnitInfo
  • UpdateCafInfos
  • Util

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0, 0.20190204, 0.20190402, 0.20190423, 0.20190516, 0.20190523, 0.20190523.1, 0.20190603, 0.20190703, 0.20190806, 0.20190903, 0.20190909, 0.20191002, 0.20191101, 0.20191201, 0.20200102, 0.20200201, 0.20200205, 0.20200301, 0.20200401, 0.20200501, 0.20200601, 0.20200704, 0.20200801, 0.20200901, 0.20201001, 0.20201101, 0.20201201, 0.20210101, 0.20210201, 0.20210228, 0.20210331, 0.20210501, 0.20210601, 0.20210701, 0.20210801, 0.20210901, 0.20211001, 0.20211101, 0.20211201, 0.20220103, 0.20220201, 0.20220301, 0.20220401, 0.20220501, 0.20220601, 0.20220701, 0.20220801, 0.20220901, 0.20221001, 0.20221101, 0.20221201, 8.8.0.20190424, 8.8.0.20190723, 8.8.1, 8.8.1.20191204, 8.8.1.20210620, 8.8.2, 8.8.2.20200205, 8.8.2.20210620, 8.8.3.20200224, 8.8.3.20200412, 8.8.3.20200412.1, 8.8.3.20210620, 8.8.4.20200716, 8.8.4.20210620, 8.10.1.20200324, 8.10.1.20200412, 8.10.1.20200518, 8.10.1.20200523, 8.10.1.20200916, 8.10.2.20200808, 8.10.2.20200916, 8.10.3.20201220, 8.10.4.20210206, 8.10.5.20210606, 8.10.6.20210814, 8.10.7.20210828, 8.10.7.20220219, 9.0.1.20210205, 9.0.1.20210207, 9.0.1.20210324, 9.0.2.20211226, 9.2.1.20211030, 9.2.1.20211101, 9.2.1.20220109, 9.2.2.20220307, 9.2.3.20220527, 9.2.3.20220709, 9.2.4.20220729, 9.2.5.20221107, 9.2.6.20230211, 9.2.7.20230228, 9.2.8.20230729, 9.4.1.20220807, 9.4.2.20220822, 9.4.3.20221104, 9.4.4.20221225, 9.4.5.20230430, 9.4.6.20230808, 9.4.7.20230826, 9.4.8.20231111, 9.6.1.20230312, 9.6.2.20230523, 9.6.2.20231121, 9.6.3.20231014, 9.6.3.20231121, 9.6.4.20240109, 9.6.5.20240423, 9.6.6.20240701, 9.8.1.20231009, 9.8.1.20231121, 9.8.2.20240223, 9.8.3.20241022, 9.8.3.20241103, 9.8.4.20241130, 9.10.1.20240511, 9.10.1.20241103
Dependencies array (>=0.1 && <0.6), base (>=4.11 && <4.14), binary (>=0.8 && <0.9), bytestring (>=0.9 && <0.11), containers (>=0.5 && <0.7), deepseq (>=1.4 && <1.5), directory (>=1 && <1.4), filepath (>=1 && <1.5), ghc-lib-parser (==0.20200401), ghc-prim (>0.2 && <0.6), hpc (>=0.6 && <0.7), pretty (>=1.1 && <1.2), process (>=1 && <1.7), time (>=1.4 && <1.10), transformers (>=0.5 && <0.6), unix, Win32 [details]
Tested with ghc ==8.8.2, ghc ==8.6.5, ghc ==8.4.4
License BSD-3-Clause
Author The GHC Team and Digital Asset
Maintainer Digital Asset
Category Development
Home page https://github.com/digital-asset/ghc-lib
Bug tracker https://github.com/digital-asset/ghc-lib/issues
Source repo head: git clone git@github.com:digital-asset/ghc-lib.git
Uploaded by shayne_fletcher at 2020-04-01T13:34:23Z
Distributions LTSHaskell:9.6.6.20240701, NixOS:9.6.6.20240701, Stackage:9.8.4.20241130
Reverse Dependencies 4 direct, 42 indirect [details]
Downloads 44332 total (416 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2020-04-01 [all 3 reports]