X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcPat.lhs;h=022796ee9ea5d3f4832a60fba0491cf1a46bcdb7;hb=8163c990823b37ce987429e1f6825358d69171b4;hp=376385aaa69025f35af9ebc9efa0ccf5c8227bdc;hpb=9d0c8f842e35dde3d570580cf62a32779f66a6de;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcPat.lhs b/compiler/typecheck/TcPat.lhs index 376385a..022796e 100644 --- a/compiler/typecheck/TcPat.lhs +++ b/compiler/typecheck/TcPat.lhs @@ -30,21 +30,19 @@ import VarSet import TcUnify import TcHsType import TysWiredIn -import Type import Coercion import StaticFlags import TyCon import DataCon import PrelNames import BasicTypes hiding (SuccessFlag(..)) -import DynFlags ( DynFlag( Opt_GADTs ) ) +import DynFlags import SrcLoc import ErrUtils import Util -import Maybes import Outputable import FastString -import Monad +import Control.Monad \end{code} @@ -435,7 +433,11 @@ tc_pat pstate (SigPatIn pat sig_ty) pat_ty thing_inside failWithTc (badSigPat pat_ty) ; (pat', tvs, res) <- tcExtendTyVarEnv2 tv_binds $ tc_lpat pat inner_ty pstate thing_inside - ; return (SigPatOut pat' inner_ty, tvs, res) } + ; return (SigPatOut pat' inner_ty, tvs, res) } + +-- Use this when we add pattern coercions back in +-- return (mkCoPatCoI (mkSymCoI coi) (SigPatOut pat' inner_ty) pat_ty +-- , tvs, res) } tc_pat _ pat@(TypePat _) _ _ = failWithTc (badTypePat pat) @@ -630,7 +632,7 @@ tcConPat pstate con_span data_con tycon pat_ty arg_pats thing_inside unwrap_ty res_pat -- Add the stupid theta - ; addDataConStupidTheta data_con ctxt_res_tys + ; setSrcSpan con_span $ addDataConStupidTheta data_con ctxt_res_tys ; ex_tvs' <- tcInstSkolTyVars skol_info ex_tvs -- Get location from monad, not from ex_tvs