compiler/basicTypes¶
- compiler/basicTypes/Avail.hs
- compiler/basicTypes/BasicTypes.hs
- compiler/basicTypes/DataCon.hs
- Note [Data Constructor Naming]
- Note [Data constructor workers and wrappers]
- Note [The need for a wrapper]
- Note [The stupid context]
- Note [TyVarBinders in DataCons]
- Note [Existential coercion variables]
- Note [DataCon arities]
- Note [DataCon user type variable binders]
- Note [Bangs on data constructor arguments]
- Note [Data con representation]
- compiler/basicTypes/Demand.hs
- Note [Exceptions and strictness]
- Note [Demand on case-alternative binders]
- Note [Don’t optimise UProd(Used) to Used]
- Note [Used should win]
- Note [Strict demands]
- Note [Dealing with call demands]
- Note [Trimming a demand to a type]
- Note [Threshold demands]
- Note [Replicating polymorphic demands]
- Note [defaultDmd and resTypeArgDmd]
- Note [Nature of result demand]
- Note [Asymmetry of ‘both’ for DmdType and DmdResult]
- Note [The need for BothDmdArg]
- Note [Demands from unsaturated function calls]
- Note [Default demand on free variables]
- Note [Always analyse in virgin pass]
- Note [Analyzing with lazy demand and lambdas]
- Note [Analysing with absent demand]
- Note [Demand transformer for a dictionary selector]
- Note [Computing one-shot info]
- Note [Unsaturated applications]
- Note [Killing usage information]
- Note [HyperStr and Use demands]
- compiler/basicTypes/FieldLabel.hs
- compiler/basicTypes/Id.hs
- compiler/basicTypes/IdInfo.hs
- compiler/basicTypes/Lexeme.hs
- compiler/basicTypes/Literal.hs
- compiler/basicTypes/MkId.hs
- Note [Wired-in Ids]
- Note [ghcPrimIds (aka pseudoops)]
- Note [magicIds]
- Note [Wrappers for data instance tycons]
- Note [Newtype datacons]
- Note [Compulsory newtype unfolding]
- Note [Inline partially-applied constructor wrappers]
- Note [Activation for data constructor wrappers]
- Note [Bangs on imported data constructors]
- Note [Data con wrappers and unlifted types]
- Note [Data con wrappers and GADT syntax]
- Note [HsImplBangs for newtypes]
- Note [Unpacking GADTs and existentials]
- Note [Unpack one-wide fields]
- Note [Recursive unboxing]
- Note [Dict funs and default methods]
- Note [Unsafe coerce magic]
- Note [seqId magic]
- Note [User-defined RULES for seq]
- Note [lazyId magic]
- Note [noinlineId magic]
- Note [The oneShot function]
- Note [magicDictId magic]
- Note [evaldUnfoldings]
- compiler/basicTypes/Module.hs
- compiler/basicTypes/NameCache.hs
- compiler/basicTypes/NameEnv.hs
- compiler/basicTypes/OccName.hs
- compiler/basicTypes/PatSyn.hs
- compiler/basicTypes/RdrName.hs
- compiler/basicTypes/SrcLoc.hs
- compiler/basicTypes/Unique.hs
- compiler/basicTypes/Var.hs
- compiler/basicTypes/VarEnv.hs