Wed Jan 14 06:01:17 PST 2009 [email protected]
* Robustify lookupFamInstEnv
Ignore-this: ee312b2b59155102d88397a33c591ad2
Suppose we have
type family T a :: * -> *
type instance T Int = []
and now we encounter the type (T Int Bool). That is perfectly
fine, even though T is over-saturated here.
This patch makes lookupFamInstEnv robust to such over-saturation.
Previously one caller (TcTyFuns.tcUnfoldSynFamInst) dealt with
the over-saturation case, but the others did not. It's better
to desl with the issue at the root, in lookupFamInstEnv itself.
M ./compiler/typecheck/TcTyFuns.lhs -9 +4
M ./compiler/types/FamInstEnv.lhs -3 +30
View patch online:
http://darcs.haskell.org/ghc/_darcs/patches/20090114140117-1287e-adc32c989080ed62c8fe909f83dc5e77b56fafed.gz
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc