Some more traceTcs
authorManuel M T Chakravarty <chak@cse.unsw.edu.au>
Sat, 29 Sep 2007 12:19:41 +0000 (12:19 +0000)
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>
Sat, 29 Sep 2007 12:19:41 +0000 (12:19 +0000)
compiler/typecheck/TcPat.lhs
compiler/typecheck/TcUnify.lhs
compiler/types/Coercion.lhs

index f009db5..5b25122 100644 (file)
@@ -587,7 +587,9 @@ tcConPat pstate con_span data_con tycon pat_ty arg_pats thing_inside
              arg_tys' = substTys    tenv arg_tys
 
        ; co_vars <- newCoVars eq_spec' -- Make coercion variables
+        ; traceTc (text "tcConPat: refineAlt")
        ; pstate' <- refineAlt data_con pstate ex_tvs' co_vars pat_ty
+        ; traceTc (text "tcConPat: refineAlt done!")
        
        ; ((arg_pats', inner_tvs, res), lie_req) <- getLIE $
                tcConArgs data_con arg_tys' arg_pats pstate' thing_inside
index 67cdf20..29aa61a 100644 (file)
@@ -211,6 +211,8 @@ boxySplitTyConApp tc orig_ty
 
       | isOpenSynTyCon tycon        -- try to normalise type family application
       = do { (coi1, ty') <- tcNormaliseFamInst ty
+           ; traceTc $ text "boxySplitTyConApp:" <+> 
+                       ppr ty <+> text "==>" <+> ppr ty'
            ; case coi1 of
               IdCo   -> defer    -- no progress, but maybe solvable => defer
                ACo _  ->          -- progress: so lets try again
index 770988d..35cf5a5 100644 (file)
@@ -404,6 +404,9 @@ splitCoercionKindOf co
   , Just (ty_fun1, ty_arg1) <- splitAppTy_maybe ty1
   , Just (ty_fun2, ty_arg2) <- splitAppTy_maybe ty2
   = ((ty_fun1, ty_fun2),(ty_arg1, ty_arg2))
+splitCoercionKindOf co 
+  = pprPanic "Coercion.splitCoercionKindOf" 
+             (ppr co $$ ppr (coercionKindPredTy co))
 
 instCoercionTyCon 
   =  mkCoercionTyCon instCoercionTyConName 2 instCoercionKind