X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypes%2FFunDeps.lhs;h=af7cfec7f90976e9e5101d677b2a2d0bc8077c9e;hb=a2fe6073155b0d056a257d8f860baf9816c2381e;hp=7f9f0509e2f2a14f58a6d4a817dd9622fa38746b;hpb=37cc35d23202c9846e68e4c0a279fa75273f6f1c;p=ghc-hetmet.git diff --git a/compiler/types/FunDeps.lhs b/compiler/types/FunDeps.lhs index 7f9f050..af7cfec 100644 --- a/compiler/types/FunDeps.lhs +++ b/compiler/types/FunDeps.lhs @@ -203,7 +203,7 @@ type Equation = (TyVarSet, [(Type, Type)]) pprEquation :: Equation -> SDoc pprEquation (qtvs, pairs) = vcat [ptext (sLit "forall") <+> braces (pprWithCommas ppr (varSetElems qtvs)), - nest 2 (vcat [ ppr t1 <+> ptext (sLit ":=:") <+> ppr t2 | (t1,t2) <- pairs])] + nest 2 (vcat [ ppr t1 <+> ptext (sLit "~") <+> ppr t2 | (t1,t2) <- pairs])] \end{code} Given a bunch of predicates that must hold, such as @@ -294,8 +294,9 @@ improveOne inst_env pred@(ClassP cls tys, _) preds , not (instanceCantMatch inst_tcs trimmed_tcs) , eqn <- checkClsFD qtvs fd cls_tvs tys_inst tys , let p_inst = (mkClassPred cls tys_inst, - ptext (sLit "arising from the instance declaration at") - <+> ppr (getSrcLoc ispec)) + sep [ ptext (sLit "arising from the dependency") <+> quotes (pprFunDep fd) + , ptext (sLit "in the instance declaration at") + <+> ppr (getSrcLoc ispec)]) ] improveOne _ _ _ @@ -320,7 +321,7 @@ checkClsFD qtvs fd clas_tvs tys1 tys2 -- tys2 = [Maybe t1, t2] -- -- We can instantiate x to t1, and then we want to force --- (Tree x) [t1/x] :=: t2 +-- (Tree x) [t1/x] ~ t2 -- -- This function is also used when matching two Insts (rather than an Inst -- against an instance decl. In that case, qtvs is empty, and we are doing