X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FbasicTypes%2FBasicTypes.lhs;fp=compiler%2FbasicTypes%2FBasicTypes.lhs;h=f14ab4d98ceeb84a4cf4d25cccdaad78db1860a2;hp=4531c912c8ea89c289b30b74e1865196363900f1;hb=011680bdbd73c93f6fd8363aaef93f995ba8f5b1;hpb=0ccb37ab2cc96f6e9cca7fe8fe0889efc13a8a69 diff --git a/compiler/basicTypes/BasicTypes.lhs b/compiler/basicTypes/BasicTypes.lhs index 4531c91..f14ab4d 100644 --- a/compiler/basicTypes/BasicTypes.lhs +++ b/compiler/basicTypes/BasicTypes.lhs @@ -673,8 +673,13 @@ defaultInlinePragma = InlinePragma { inl_act = AlwaysActive alwaysInlinePragma = defaultInlinePragma { inl_inline = True } neverInlinePragma = defaultInlinePragma { inl_act = NeverActive } -dfunInlinePragma = defaultInlinePragma { inl_rule = ConLike } - + +-- A DFun has an always-active inline activation so that +-- exprIsConApp_maybe can "see" its unfolding +-- (However, its actual Unfolding is a DFunUnfolding, which is +-- never inlined other than via exprIsConApp_maybe.) +dfunInlinePragma = defaultInlinePragma { inl_act = AlwaysActive + , inl_rule = ConLike } isDefaultInlinePragma :: InlinePragma -> Bool isDefaultInlinePragma (InlinePragma { inl_act = activation