X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FdeSugar%2FMatch.lhs;h=c32268644c13730db79ae3ee2fbad95582d93d70;hb=dd99b6f8c61f393087d03cd697c06051a43ca4e9;hp=2d826f67a7dc3f8cece3fdaf87b3303286f048d1;hpb=082c473c8358dc65bac1e41f268eba02d64eaf03;p=ghc-hetmet.git diff --git a/compiler/deSugar/Match.lhs b/compiler/deSugar/Match.lhs index 2d826f6..c322686 100644 --- a/compiler/deSugar/Match.lhs +++ b/compiler/deSugar/Match.lhs @@ -43,6 +43,7 @@ import Maybes import Util import Name import Outputable +import FastString \end{code} This function is a wrapper of @match@, it must be called from all the parts where @@ -386,7 +387,7 @@ which will be scrutinised. This means: Replace variable patterns @x@ (@x /= v@) with the pattern @_@, together with the binding @x = v@. \item -Replace the `as' pattern @xp@ with the pattern p and a binding @x = do v@. +Replace the `as' pattern @x@@p@ with the pattern p and a binding @x = v@. \item Removing lazy (irrefutable) patterns (you don't want to know...). \item @@ -842,8 +843,8 @@ viewLExprEq (e1,_) (e2,_) = -- equating different ways of writing a coercion) wrap WpHole WpHole = True wrap (WpCompose w1 w2) (WpCompose w1' w2') = wrap w1 w1' && wrap w2 w2' - wrap (WpCo c) (WpCo c') = tcEqType c c' - wrap (WpApp d) (WpApp d') = d == d' + wrap (WpCast c) (WpCast c') = tcEqType c c' + wrap (WpApp d) (WpApp d') = d == d' wrap (WpTyApp t) (WpTyApp t') = tcEqType t t' -- Enhancement: could implement equality for more wrappers -- if it seems useful (lams and lets)