patch applied (ghc-6.8/ghc): MERGED: Reorganise TcSimplify (again); FIX Trac #1919

Ian Lynagh igloo at earth.li
Mon Dec 3 10:09:47 EST 2007


Mon Dec  3 06:04:43 PST 2007  Ian Lynagh <igloo at earth.li>
  * MERGED: Reorganise TcSimplify (again); FIX Trac #1919
  simonpj at microsoft.com**20071128173146
  
   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 -123 +69



More information about the Cvs-ghc mailing list