Yet more refactoring in overlapping type-family instances
authorSimon Peyton Jones <simonpj@microsoft.com>
Sat, 9 Feb 2013 00:03:40 +0000 (00:03 +0000)
committerSimon Peyton Jones <simonpj@microsoft.com>
Sat, 9 Feb 2013 00:03:40 +0000 (00:03 +0000)
commitbcbfdd0331b0aef102920f7f183aa07b0b74de31
tree53cf8fc18e13315f1457050485bc016b7b0edcc0
parent594388682075c4f8b40570464b53933d9c16f0a4
Yet more refactoring in overlapping type-family instances

This patch mainly introduces TcValidity.checkConsistendFamInst,
and uses it when typechecking type-family instances, *including*
default instances.

I find I can't remember why I began this particular saga, but
it's a modest improvement I think.
compiler/typecheck/TcInstDcls.lhs
compiler/typecheck/TcTyClsDecls.lhs
compiler/typecheck/TcValidity.lhs
compiler/types/FamInstEnv.lhs