X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Ftypecheck%2FTcIfaceSig.lhs;h=2cf40956d393c4fceb4e015581f2e4ddc39cf956;hb=30b5ebe424ebae69b162ac3fc547eb14d898535f;hp=c4a59f33ec38d1fffbead4a9a9e72e20e4de739e;hpb=ddddb042fb266dc114273db94c3b2b04ada6346b;p=ghc-hetmet.git diff --git a/ghc/compiler/typecheck/TcIfaceSig.lhs b/ghc/compiler/typecheck/TcIfaceSig.lhs index c4a59f3..2cf4095 100644 --- a/ghc/compiler/typecheck/TcIfaceSig.lhs +++ b/ghc/compiler/typecheck/TcIfaceSig.lhs @@ -89,17 +89,14 @@ tcIdInfo unf_env in_scope_vars name ty info info_ins tcPrag info (HsNoCafRefs) = returnTc (info `setCafInfo` NoCafRefs) tcPrag info (HsCprInfo cpr_info) = returnTc (info `setCprInfo` cpr_info) - tcPrag info (HsUnfold inline_prag maybe_expr) - = (case maybe_expr of - Just expr -> tcPragExpr unf_env name in_scope_vars expr - Nothing -> returnNF_Tc Nothing - ) `thenNF_Tc` \ maybe_expr' -> + tcPrag info (HsUnfold inline_prag expr) + = tcPragExpr unf_env name in_scope_vars expr `thenNF_Tc` \ maybe_expr' -> let -- maybe_expr doesn't get looked at if the unfolding -- is never inspected; so the typecheck doesn't even happen unfold_info = case maybe_expr' of Nothing -> noUnfolding - Just expr' -> mkUnfolding expr' + Just expr' -> mkTopUnfolding expr' info1 = info `setUnfoldingInfo` unfold_info info2 = info1 `setInlinePragInfo` inline_prag in @@ -122,7 +119,7 @@ tcWorkerInfo unf_env ty info worker_name let -- Watch out! We can't pull on unf_env too eagerly! info' = case explicitLookupValue unf_env worker_name of - Just worker_id -> info `setUnfoldingInfo` mkUnfolding (wrap_fn worker_id) + Just worker_id -> info `setUnfoldingInfo` mkTopUnfolding (wrap_fn worker_id) `setWorkerInfo` Just worker_id Nothing -> pprTrace "tcWorkerInfo failed:" (ppr worker_name) info