X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FhsSyn%2FHsPat.lhs;h=abfb3c623af8d6c0a2b37d13d0eab25059d42626;hb=b1ab4b8a607addc4d097588db5761313c996a41f;hp=f2ba6b342ecc173e27a0a346a64d1b4b127e6e13;hpb=190f24892156953d73b55401d0467a6f1a88ce5d;p=ghc-hetmet.git diff --git a/compiler/hsSyn/HsPat.lhs b/compiler/hsSyn/HsPat.lhs index f2ba6b3..abfb3c6 100644 --- a/compiler/hsSyn/HsPat.lhs +++ b/compiler/hsSyn/HsPat.lhs @@ -1,4 +1,5 @@ % +% (c) The University of Glasgow 2006 % (c) The GRASP/AQUA Project, Glasgow University, 1992-1998 % \section[PatSyntax]{Abstract Haskell syntax---patterns} @@ -23,21 +24,20 @@ module HsPat ( import {-# SOURCE #-} HsExpr ( SyntaxExpr ) -- friends: -import HsBinds ( DictBinds, HsBind(..), HsWrapper, isIdHsWrapper, pprHsWrapper, - emptyLHsBinds, pprLHsBinds ) -import HsLit ( HsLit(HsCharPrim), HsOverLit ) -import HsTypes ( LHsType, PostTcType ) -import HsDoc ( LHsDoc, ppr_mbDoc ) -import BasicTypes ( Boxity, tupleParens ) +import HsBinds +import HsLit +import HsTypes +import HsDoc +import BasicTypes -- others: import PprCore ( {- instance OutputableBndr TyVar -} ) -import TysWiredIn ( nilDataCon, charDataCon, charTy ) -import Var ( TyVar ) -import DataCon ( DataCon, dataConTyCon ) -import TyCon ( isProductTyCon ) +import TysWiredIn +import Var +import DataCon +import TyCon import Outputable -import Type ( Type ) -import SrcLoc ( Located(..), unLoc, noLoc ) +import Type +import SrcLoc \end{code} @@ -131,7 +131,7 @@ data Pat id | CoPat HsWrapper -- If co::t1 -> t2, p::t2, -- then (CoPat co p) :: t1 (Pat id) -- Why not LPat? Ans: existing locn will do - Type + Type -- Type of whole pattern, t1 -- During desugaring a (CoPat co pat) turns into a cast with 'co' on -- the scrutinee, followed by a match on 'pat' \end{code} @@ -219,8 +219,8 @@ pprConArgs (PrefixCon pats) = interppSP pats pprConArgs (InfixCon p1 p2) = interppSP [p1,p2] pprConArgs (RecCon rpats) = braces (hsep (punctuate comma (map (pp_rpat) rpats))) where - pp_rpat (HsRecField v p d) = - hsep [ppr d, ppr v, char '=', ppr p] + pp_rpat (HsRecField v p _d) = + hsep [ppr v, char '=', ppr p] -- add parallel array brackets around a document --