summaryrefslogtreecommitdiff
path: root/compiler/typecheck/TcCanonical.lhs
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2012-12-24 09:38:43 +0000
committerSimon Peyton Jones <simonpj@microsoft.com>2012-12-24 09:38:43 +0000
commite9e650dd08ad7d192f6e0225db7468faadf55c02 (patch)
treea8b44a359c08b157ed93c5bf1501b55457c9027c /compiler/typecheck/TcCanonical.lhs
parent52e43004f63276c1342933e40a673ad25cf2113a (diff)
downloadhaskell-e9e650dd08ad7d192f6e0225db7468faadf55c02.tar.gz
A bit more tracing
Diffstat (limited to 'compiler/typecheck/TcCanonical.lhs')
-rw-r--r--compiler/typecheck/TcCanonical.lhs10
1 files changed, 6 insertions, 4 deletions
diff --git a/compiler/typecheck/TcCanonical.lhs b/compiler/typecheck/TcCanonical.lhs
index 3dd88446e1..a7533ed8b8 100644
--- a/compiler/typecheck/TcCanonical.lhs
+++ b/compiler/typecheck/TcCanonical.lhs
@@ -199,10 +199,10 @@ canEvNC :: CtLoc -> CtEvidence -> TcS StopOrContinue
-- Called only for non-canonical EvVars
canEvNC d ev
= case classifyPredType (ctEvPred ev) of
- ClassPred cls tys -> canClassNC d ev cls tys
- EqPred ty1 ty2 -> canEqNC d ev ty1 ty2
- TuplePred tys -> canTuple d ev tys
- IrredPred {} -> canIrred d ev
+ ClassPred cls tys -> traceTcS "canEvNC:cls" (ppr cls <+> ppr tys) >> canClassNC d ev cls tys
+ EqPred ty1 ty2 -> traceTcS "canEvNC:eq" (ppr ty1 $$ ppr ty2) >> canEqNC d ev ty1 ty2
+ TuplePred tys -> traceTcS "canEvNC:tup" (ppr tys) >> canTuple d ev tys
+ IrredPred {} -> traceTcS "canEvNC:irred" (ppr (ctEvPred ev)) >> canIrred d ev
\end{code}
@@ -249,6 +249,8 @@ canClass d ev cls tys
; let co = mkTcTyConAppCo (classTyCon cls) cos
xi = mkClassPred cls xis
; mb <- rewriteCtFlavor ev xi co
+ ; traceTcS "canClass" (vcat [ ppr ev <+> ppr cls <+> ppr tys
+ , ppr xi, ppr mb ])
; case mb of
Nothing -> return Stop
Just new_ev -> continueWith $