ghc-9.4.8: The GHC API
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.HsToCore.Errors.Types

Synopsis

Documentation

newtype MinBound Source #

Constructors

MinBound Integer 

newtype MaxBound Source #

Constructors

MaxBound Integer 

data DsMessage Source #

Diagnostics messages emitted during desugaring.

Constructors

forall a.(Diagnostic a, Typeable a) => DsUnknownMessage a

Simply wraps a generic Diagnostic message.

DsEmptyEnumeration

DsEmptyEnumeration is a warning (controlled by the -Wempty-enumerations flag) that is emitted if an enumeration is empty.

Example(s):

main :: IO () main = do let enum = [5 .. 3] print enum

Here enum would yield an empty list, because 5 is greater than 3.

Test case(s): warningsshould_compileT10930 warningsshould_compileT18402 warningsshould_compileT10930b numericshould_compileT10929 numericshould_compileT7881 deSugarshould_runT18172

DsIdentitiesFound !Id !Type

DsIdentitiesFound is a warning (controlled by the -Widentities flag) that is emitted on uses of Prelude numeric conversions that are probably the identity (and hence could be omitted).

Example(s):

main :: IO () main = do let x = 10 print $ conv 10

where conv :: Int -> Int conv x = fromIntegral x

Here calling conv is essentially the identity function, and therefore can be omitted.

Test case(s): deSugarshould_compileT4488

DsOverflowedLiterals !Integer !Name !(Maybe (MinBound, MaxBound)) !NegLiteralExtEnabled 
DsRedundantBangPatterns !(HsMatchContext GhcRn) !SDoc 
DsOverlappingPatterns !(HsMatchContext GhcRn) !SDoc 
DsInaccessibleRhs !(HsMatchContext GhcRn) !SDoc 
DsMaxPmCheckModelsReached !MaxPmCheckModels 
DsNonExhaustivePatterns !(HsMatchContext GhcRn) !ExhaustivityCheckType !MaxUncoveredPatterns [Id] [Nabla] 
DsTopLevelBindsNotAllowed !BindsType !(HsBindLR GhcTc GhcTc) 
DsUselessSpecialiseForClassMethodSelector !Id 
DsUselessSpecialiseForNoInlineFunction !Id 
DsMultiplicityCoercionsNotSupported 
DsOrphanRule !CoreRule 
DsRuleLhsTooComplicated !CoreExpr !CoreExpr 
DsRuleIgnoredDueToConstructor !DataCon 
DsRuleBindersNotBound 

Fields

  • ![Var]

    The list of unbound binders

  • ![Var]

    The original binders

  • !CoreExpr

    The original LHS

  • !CoreExpr

    The optimised LHS

DsMultipleConForNewtype [LocatedN Name] 
DsLazyPatCantBindVarsOfUnliftedType [Var] 
DsNotYetHandledByTH !ThRejectionReason 
DsAggregatedViewExpressions [[LHsExpr GhcTc]] 
DsUnbangedStrictPatterns !(HsBindLR GhcTc GhcTc) 
DsCannotMixPolyAndUnliftedBindings !(HsBindLR GhcTc GhcTc) 
DsWrongDoBind !(LHsExpr GhcTc) !Type 
DsUnusedDoBind !(LHsExpr GhcTc) !Type 
DsRecBindsNotAllowedForUnliftedTys ![LHsBindLR GhcTc GhcTc] 
DsRuleMightInlineFirst !RuleName !Var !Activation 
DsAnotherRuleMightFireFirst !RuleName !RuleName !Var 

newtype DsArgNum Source #

Constructors

DsArgNum Int