X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcBinds.lhs;h=7cafd3c1c59a3783d16e98317c5c6de1dbddeda1;hp=2cfb1b2bcb63d589857c508472e81b4d204d3f4c;hb=0f5e104c36b1dc3d8deeec5fef3d65e7b3a1b5ad;hpb=1363f4121ceaa38ac50eac42381b976f89d5ea96 diff --git a/compiler/typecheck/TcBinds.lhs b/compiler/typecheck/TcBinds.lhs index 2cfb1b2..7cafd3c 100644 --- a/compiler/typecheck/TcBinds.lhs +++ b/compiler/typecheck/TcBinds.lhs @@ -630,14 +630,14 @@ tcLhs sig_fn (FunBind { fun_id = L nm_loc name, fun_infix = inf, fun_matches = m tcLhs sig_fn (PatBind { pat_lhs = pat, pat_rhs = grhss }) = do { mb_sigs <- mapM (tcInstSig_maybe sig_fn) names ; mono_pat_binds <- doptM Opt_MonoPatBinds - -- With -fmono-pat-binds, we do no generalisation of pattern bindings + -- With -XMonoPatBinds, we do no generalisation of pattern bindings -- But the signature can still be polymoprhic! -- data T = MkT (forall a. a->a) -- x :: forall a. a->a -- MkT x = -- The function get_sig_ty decides whether the pattern-bound variables - -- should have exactly the type in the type signature (-fmono-pat-binds), - -- or the instantiated version (-fmono-pat-binds) + -- should have exactly the type in the type signature (-XMonoPatBinds), + -- or the instantiated version (-XMonoPatBinds) ; let nm_sig_prs = names `zip` mb_sigs get_sig_ty | mono_pat_binds = idType . sig_id