patch applied (ghc): Reorganise TcSimplify (again); FIX Trac #1919

Simon Peyton Jones simonpj at microsoft.com
Mon Dec 3 06:32:22 EST 2007


Wed Nov 28 09:31:46 PST 2007  simonpj at microsoft.com
  * Reorganise TcSimplify (again); FIX Trac #1919
  
  This was a bit tricky.  We had a "given" dict like (d7:Eq a); then it got
  supplied to reduceImplication, which did some zonking, and emerged with
  a "needed given" (d7:Eq Int). That got everything confused.
  
  I found a way to simplify matters significantly.  Now reduceContext
  	- first deals with methods/literals/dictionaries
  	- then deals with implications
  Separating things in this way not only made the bug go away, but
  eliminated the need for the recently-added "needed-givens" results returned
  by checkLoop.  Hurrah.
  
  It's still a swamp.  But it's a bit better.
  

    M ./compiler/typecheck/TcSimplify.lhs -122 +69



More information about the Cvs-ghc mailing list