From: simonpj@microsoft.com Date: Wed, 6 Sep 2006 11:42:23 +0000 (+0000) Subject: Comment on the commoning up of CoPats in Match X-Git-Tag: After_FC_branch_merge~129 X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=3cec5683766a13019c2835a4e79cc7e7dc066b96 Comment on the commoning up of CoPats in Match --- diff --git a/compiler/deSugar/Match.lhs b/compiler/deSugar/Match.lhs index 2d64633..d793343 100644 --- a/compiler/deSugar/Match.lhs +++ b/compiler/deSugar/Match.lhs @@ -745,6 +745,10 @@ sameGroup (PgN l1) (PgN l2) = True -- Needs conditionals sameGroup (PgNpK l1) (PgNpK l2) = l1==l2 -- Order is significant -- See Note [Order of n+k] sameGroup (PgCo t1) (PgCo t2) = t1 `coreEqType` t2 + -- CoPats are in the same goup only if the type of the + -- enclosed pattern is the same. The patterns outside the CoPat + -- always have the same type, so this boils down to saying that + -- the two coercions are identical. sameGroup _ _ = False patGroup :: Pat Id -> PatGroup