summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2014-03-14 13:50:29 +0000
committerSimon Peyton Jones <simonpj@microsoft.com>2014-03-17 13:51:08 +0000
commitf4d15cb97a0d480d39ef4272192ca731fb732c6d (patch)
tree0fa73a2a0c412831c2a3f1bdad7520596c00e855
parent2b3feaa5e6da5f071ffe0325a81a32fd395739b6 (diff)
downloadhaskell-f4d15cb97a0d480d39ef4272192ca731fb732c6d.tar.gz
More debug info
-rw-r--r--compiler/typecheck/TcDeriv.lhs6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/typecheck/TcDeriv.lhs b/compiler/typecheck/TcDeriv.lhs
index 03004c994a..a89adda3f3 100644
--- a/compiler/typecheck/TcDeriv.lhs
+++ b/compiler/typecheck/TcDeriv.lhs
@@ -652,6 +652,7 @@ deriveStandalone (L loc (DerivDecl deriv_ty))
------------------------------------------------------------------
deriveTyData :: [TyVar] -> TyCon -> [Type] -- LHS of data or data instance
+ -- Can be a data instance, hence [Type] args
-> LHsType Name -- The deriving predicate
-> TcM EarlyDerivSpec
-- The deriving clause of a data or newtype declaration
@@ -692,10 +693,11 @@ deriveTyData tvs tc tc_args (L loc deriv_pred)
final_cls_tys = substTys subst cls_tys
univ_tvs = mkVarSet deriv_tvs `unionVarSet` tyVarsOfTypes final_tc_args
- ; traceTc "derivTyData1" (vcat [ pprTvBndrs tvs, ppr tc, ppr tc_args
+ ; traceTc "derivTyData1" (vcat [ pprTvBndrs tvs, ppr tc, ppr tc_args, ppr deriv_pred
, pprTvBndrs (varSetElems $ tyVarsOfTypes tc_args)
, ppr n_args_to_keep, ppr n_args_to_drop
- , ppr inst_ty_kind, ppr cls_arg_kind, ppr mb_match ])
+ , ppr inst_ty_kind, ppr cls_arg_kind, ppr mb_match
+ , ppr final_tc_args, ppr final_cls_tys ])
-- Check that the result really is well-kinded
; checkTc (n_args_to_keep >= 0 && isJust mb_match)