X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fiface%2FMkIface.lhs;h=2c106b0a1abb857c9e88393dd92a3059af5fd585;hp=549fce6165062e204ca511c5efae2cf7e4186d29;hb=a263737bbf44050a7b5ecbe267ddf85d410b73e5;hpb=545cdeb52fc4feea3fa9668706e05ad75041f8b0 diff --git a/compiler/iface/MkIface.lhs b/compiler/iface/MkIface.lhs index 549fce6..2c106b0 100644 --- a/compiler/iface/MkIface.lhs +++ b/compiler/iface/MkIface.lhs @@ -1482,14 +1482,12 @@ toIfaceIdInfo id_info toIfUnfolding :: Unfolding -> Maybe IfaceInfoItem toIfUnfolding (CoreUnfolding { uf_tmpl = rhs, uf_arity = arity, uf_guidance = guidance }) = case guidance of - InlineRule { ug_ir_info = InlSat } -> Just (HsUnfold (IfInlineRule arity True (toIfaceExpr rhs))) - InlineRule { ug_ir_info = InlUnSat } -> Just (HsUnfold (IfInlineRule arity False (toIfaceExpr rhs))) - InlineRule { ug_ir_info = InlWrapper w } -> Just (HsUnfold (IfWrapper arity (idName w))) + InlineRule { ir_info = InlWrapper w } -> Just (HsUnfold (IfWrapper arity (idName w))) + InlineRule { ir_sat = InlSat } -> Just (HsUnfold (IfInlineRule arity True (toIfaceExpr rhs))) + InlineRule { ir_sat = InlUnSat } -> Just (HsUnfold (IfInlineRule arity False (toIfaceExpr rhs))) UnfoldNever -> Nothing UnfoldIfGoodArgs {} -> Just (HsUnfold (IfCoreUnfold (toIfaceExpr rhs))) - UnfoldAlways -> panic "toIfUnfolding:UnfoldAlways" - -- Never happens because we never have - -- bindings for unfold-always things + toIfUnfolding (DFunUnfolding _con ops) = Just (HsUnfold (IfDFunUnfold (map toIfaceExpr ops))) -- No need to serialise the data constructor;