X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FhsSyn%2FHsDecls.lhs;h=d4c904f4e9cf44cc6ee4f568326a4e4f239db9cc;hb=cb6085ec18ece0ad37cebb3cd9ac22ee65b59c29;hp=ec185fef16cf15fcb34b923d4a64bef1834a91d5;hpb=dcef38bab91d45b56f7cf3ceeec96303d93728bb;p=ghc-hetmet.git diff --git a/ghc/compiler/hsSyn/HsDecls.lhs b/ghc/compiler/hsSyn/HsDecls.lhs index ec185fe..d4c904f 100644 --- a/ghc/compiler/hsSyn/HsDecls.lhs +++ b/ghc/compiler/hsSyn/HsDecls.lhs @@ -22,17 +22,15 @@ import HsTypes import IdInfo import SpecEnv ( SpecEnv ) import HsCore ( UfExpr ) -import HsBasic ( Fixity ) -import TyCon ( NewOrData(..) ) -- Just a boolean flag really +import BasicTypes ( Fixity, NewOrData(..) ) -- others: -import Name --( getOccName, OccName ) +import Name ( getOccName, OccName, NamedThing(..) ) import Outputable ( interppSP, interpp'SP, - Outputable(..){-instance * []-} + PprStyle(..), Outputable(..){-instance * []-} ) import Pretty import SrcLoc ( SrcLoc ) -import PprStyle ( PprStyle(..) ) import Util \end{code} @@ -380,11 +378,16 @@ instance (NamedThing name, Outputable name) => Outputable (IfaceSig name) where data HsIdInfo name = HsArity ArityInfo - | HsStrictness (StrictnessInfo name) - | HsUnfold (UfExpr name) + | HsStrictness (HsStrictnessInfo name) + | HsUnfold Bool (UfExpr name) -- True <=> INLINE pragma | HsUpdate UpdateInfo - | HsDeforest DeforestInfo | HsArgUsage ArgUsageInfo | HsFBType FBTypeInfo -- ToDo: specialisations + +data HsStrictnessInfo name + = HsStrictnessInfo [Demand] + (Maybe (name, [name])) -- Worker, if any + -- and needed constructors + | HsBottom \end{code}