Wed Oct 10 02:33:34 PDT 2007  [EMAIL PROTECTED]
  * FIX: tidy up TcSimplify following equality constraints additions
  
  The combination of "type refinement" for GADTs and the new equality
  constraints has made TcSimplify rather complicated.  And wrong:
  it generated bogus code for cholewo-eval.
  
  This patch is still far from entirely satisfactory.  There are
  too many places where invariants are unclear, and the code is 
  still a bit of a mess.  But I believe it's better, and it passes
  the regression tests!  So I think it's good enough for the 6.8 release.
  
  Please merge.
  
  The main changes are:
  
  - get rid of extractLocalResults (which was always suspicious)
  
  - instead, treat the 'refinement' along with 'givens', by 
    adding a field to RedEnv, red_reft which travels with red_givens
  
  - I also reworked extractResults a bit, which looked wrong to me
    This entailed changing the Given constructor in Avail to take
    an Inst rather than a TcId
  
  

    M ./compiler/typecheck/TcSimplify.lhs -98 +112

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to