Thu Dec 2 04:35:47 PST 2010 [email protected]
* Re-jig simplifySuperClass (again)
This fixes the current loop in T3731, and will fix other
reported loops. The loops show up when we are generating
evidence for superclasses in an instance declaration.
The trick is to make the "self" dictionary simplifySuperClass
depend *explicitly* on the superclass we are currently trying
to build. See Note [Dependencies in self dictionaries] in TcSimplify.
That in turn means that EvDFunApp needs a dependency-list, used
when chasing dependencies in isGoodRecEv.
M! ./compiler/deSugar/DsBinds.lhs -7 +7
M! ./compiler/hsSyn/HsBinds.lhs -2 +6
M! ./compiler/typecheck/TcCanonical.lhs -4
M! ./compiler/typecheck/TcHsSyn.lhs -2 +2
M! ./compiler/typecheck/TcInstDcls.lhs -7 +5
M! ./compiler/typecheck/TcInteract.lhs -29 +3
M! ./compiler/typecheck/TcSMonad.lhs -13 +6
M! ./compiler/typecheck/TcSimplify.lhs +51
M! ./compiler/typecheck/TcType.lhs -4
View patch online:
http://darcs.haskell.org/cgi-bin/darcsweb.cgi?r=ghc-7.0/ghc;a=darcs_commitdiff;h=20101202123547-1287e-62fb528c0bcca2863156946412376ac6f4a25068.gz
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc