fix of wanted equational class context
authorTom Schrijvers <tom.schrijvers@cs.kuleuven.be>
Tue, 4 Sep 2007 08:00:14 +0000 (08:00 +0000)
committerTom Schrijvers <tom.schrijvers@cs.kuleuven.be>
Tue, 4 Sep 2007 08:00:14 +0000 (08:00 +0000)
commit66c58d1c46338135abdb76a86c7342fab005a988
treec87d67b2c996aee77a478f5dc5190d3e5462e36a
parentfe4dd43030b37772a08ed0986171d3cffcdaca6a
fix of wanted equational class context

Previously failed to account for equational
class context for wanted dictionary contraints, e.g. wanted C a
in

class a ~ Int => C a
instance C Int

should give rise to wanted a ~ Int and consequently discharge a ~ Int by
unifying a with Int and then discharge C Int with the instance.

All ancestor equalities are taken into account.
compiler/typecheck/Inst.lhs
compiler/typecheck/TcSimplify.lhs