Changes between Version 253 and Version 254 of TypeFunctionsStatus


Ignore:
Timestamp:
Oct 16, 2007 11:58:20 AM (8 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{{{