Changes between Version 253 and Version 254 of TypeFunctionsStatus


Ignore:
Timestamp:
Oct 16, 2007 11:58:20 AM (7 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsStatus

    v253 v254  
    7474 0. The tests `tcfail068` and `rw` used to raise more type errors right away.  Now, we see less recovery. 
    7575 0. What about filtering the `EqInst`s in `TcSimplify.addSCs`.  We need them, don't we?  But they give rise to `Var`s, not `Id`s, and we haven't got selectors. 
     76 0. Consider 
     77{{{ 
     78type family F a 
     79data T a b = MkT1 { fa :: F a, fb :: b } 
     80upd t x = t { fb = x } 
     81}}} 
     82  What is the most general type of `upd`?  It's 
     83{{{ 
     84upd :: (F a ~ F d) => T a b -> c -> T d c 
     85}}} 
     86  However, we currently insist on the less general 
     87{{{ 
     88upd :: T a b -> c -> T a c 
     89}}} 
     90  It seems a bit complicated to come up with the most general type.  THe relevant code is in `TcExpr.tcExpr` in STEP 4 of the `RecordUpd` case. 
    7691 0. Can we support 
    7792{{{