X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Frename%2FRnBinds.lhs;h=a92192428b69aa7f1713c1f0e6b3b476c3253605;hp=60d1a3ee098c8c789f1a60063ea128225194c9aa;hb=af075cd3341968e4eac6f95cd76df17e99597fa8;hpb=105da4197baa8ed159ec71b65b6b64c6fcfc8bbb diff --git a/compiler/rename/RnBinds.lhs b/compiler/rename/RnBinds.lhs index 60d1a3e..a921924 100644 --- a/compiler/rename/RnBinds.lhs +++ b/compiler/rename/RnBinds.lhs @@ -495,11 +495,13 @@ rnBind _ trim (L loc (PatBind { pat_lhs = pat, ; (grhss', fvs) <- rnGRHSs PatBindRhs grhss -- No scoped type variables for pattern bindings + ; let fvs' = trim fvs - ; return (L loc (PatBind { pat_lhs = pat, + ; fvs' `seq` + return (L loc (PatBind { pat_lhs = pat, pat_rhs = grhss', pat_rhs_ty = placeHolderType, - bind_fvs = trim fvs }), + bind_fvs = fvs' }), bndrs, pat_fvs `plusFV` fvs) } rnBind sig_fn @@ -517,13 +519,15 @@ rnBind sig_fn ; (matches', fvs) <- bindSigTyVarsFV (sig_fn plain_name) $ -- bindSigTyVars tests for Opt_ScopedTyVars rnMatchGroup (FunRhs plain_name inf) matches + ; let fvs' = trim fvs ; checkPrecMatch inf plain_name matches' - ; return (L loc (FunBind { fun_id = name, + ; fvs' `seq` + return (L loc (FunBind { fun_id = name, fun_infix = inf, fun_matches = matches', - bind_fvs = trim fvs, + bind_fvs = fvs', fun_co_fn = idHsWrapper, fun_tick = Nothing }), [plain_name], fvs)