diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2014-03-14 13:50:29 +0000 |
---|---|---|
committer | Simon Peyton Jones <simonpj@microsoft.com> | 2014-03-17 13:51:08 +0000 |
commit | f4d15cb97a0d480d39ef4272192ca731fb732c6d (patch) | |
tree | 0fa73a2a0c412831c2a3f1bdad7520596c00e855 | |
parent | 2b3feaa5e6da5f071ffe0325a81a32fd395739b6 (diff) | |
download | haskell-f4d15cb97a0d480d39ef4272192ca731fb732c6d.tar.gz |
More debug info
-rw-r--r-- | compiler/typecheck/TcDeriv.lhs | 6 |
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) |