ghc-lib-parser-9.8.1.20231009: The GHC API, decoupled from GHC versions
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.Core.Lint

Contents

Synopsis

Documentation

data LintFlags #

Constructors

LF 

Fields

data StaticPtrCheck #

Constructors

AllowAnywhere

Allow makeStatic to occur anywhere.

AllowAtTopLevel

Allow makeStatic calls at the top-level only.

RejectEverywhere

Reject any makeStatic occurrence.

Instances

Instances details
Eq StaticPtrCheck # 
Instance details

Defined in GHC.Core.Lint

data LintConfig #

Constructors

LintConfig 

Fields

lintCoreBindings' :: LintConfig -> CoreProgram -> WarnsAndErrs #

Type-check a CoreProgram. See Note [Core Lint guarantee].

lintUnfolding #

Arguments

:: Bool

True = is a compulsory unfolding

-> LintConfig 
-> SrcLoc 
-> CoreExpr 
-> Maybe (Bag SDoc) 

lintAnnots :: SDoc -> (ModGuts -> CoreM ModGuts) -> ModGuts -> CoreM ModGuts #

This checks whether a pass correctly looks through debug annotations (SourceNote). This works a bit different from other consistency checks: We check this by running the given task twice, noting all differences between the results.

lintAxioms #

Arguments

:: Logger 
-> LintConfig 
-> SDoc

The source of the linted axioms

-> [CoAxiom Branched] 
-> IO () 

Debug output

data EndPassConfig #

Configuration for boilerplate operations at the end of a compilation pass producing Core.

Constructors

EndPassConfig 

Fields

displayLintResults #

Arguments

:: Logger 
-> Bool

If True, display linter warnings. If False, ignore linter warnings.

-> SDoc

The source of the linted program

-> SDoc

The linted program, pretty-printed

-> WarnsAndErrs 
-> IO ()