Changes between Version 270 and Version 271 of TypeFunctionsStatus


Ignore:
Timestamp:
Nov 20, 2007 6:54:05 AM (8 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsStatus

    v270 v271  
    1616 * #1723 (type families & GADTs) [will be fixed when GADTs are implemented by equalities; we'll want to add the test case to the testsuite] 
    1717 * #1716 (bogus evidence generation with type equalities) 
    18  * #1715 (iface problem, which is tricky to reproduce) 
     18 * #1715 (iface problem, which is tricky to reproduce...not anymore, also appears in package ndp) 
    1919 * #1769 (deriving typeable for data families) 
    2020 
     
    3939   GADT4(normal) 
    4040   GADT5(normal) 
    41    GADT7(normal) 
     41--   GADT7(normal)   -- fails due to current rigidity test 
    4242Unexpected failures: 
    4343   GADT3(normal) -- ok, just tickles a known bug 
     
    4545== typecheck/ == 
    4646Unexpected failures: 
    47    tcfail167(normal)  -- Doesn't produce inaccessible case alternative message anymore. 
    48    tcfail172(normal)  -- Passes the non-rigid context example...is this good or bad? 
     47   tcfail167(normal)    -- Doesn't produce inaccessible case alternative message anymore. 
    4948 
    5049== gadt/ == 
     
    5453   doaitse(normal)  -- maybe same problem as in equal 
    5554   equal(normal)   -- GADT givens (from pattern matching) don't seem to be used to discharge GADT wanteds (demanded by rhs) 
    56    gadt13(normal)  --  Passes the non-rigid context example...is this good or bad? 
    5755   gadt18(normal)  -- GADT equalities not properly propagated in class instances 
    5856   gadt21(normal)  -- OK!  Appears to just be a different error message. 
    5957   gadt22(normal)  -- CoreLint failure 
    60    gadt7(normal)    --  Passes the non-rigid context example...is this good or bad? 
    6158   gadt9(normal)  -- seems like the problem with equal 
    6259   lazypatok(normal)  -- May actually be better than before! 
     
    6865}}} 
    6966    * Handling of cases expression scrutinising GADTs:  
     67      * Remove the dodgy rigidity test that is in `tcConPat` right now. 
    7068      * implement proposal where we infer a rigidity flag for case scutinees and pass that down when type checking the patterns, 
     69      * We infer the rigidity flag for the case scrutinee by generalising its type and checking whether that has an foralls at the top.  It's rigid if it has no foralls. 
    7170      * if a pattern has a GADT constructor (ie, any constraints in the data constructor signature), the scutinee must be rigid, 
    7271      * we  need to know of types whether they are rigid (not only whether they contain unification variables, but by a flag in the environment that indicates whether the computation of that type involved non-rigid type variables)