Changes between Version 167 and Version 168 of TypeFunctionsStatus
- Aug 27, 2007 1:34:13 PM (8 years ago)
v167 v168 5 5 '''Debugging of type family patch:''' 6 6 0. `boxySplitTyConApp` and friends must be able to deal with `orig_ty`s that have outermost type family applications; i.e., they need to try to normalise and possibly have to defer. They also need to defer on skolems. Consequently, they also need to return a coercion. This , in particular, affects the treatment of literal lists, parallel arrays, and tuples in`TcExpr.tcExpr` is fishy. 7 7 8 0. To fix Roman's GADT1 test, proceed as follows (as suggested by SPJ): 8 9 * `TcGadt.uUnrefined`: the occurs check needs to be more subtle. If the variable occurs, but does so under a type family application, do not fail, but just defer. … … 92 93 Unexpected failures: 93 94 Refl2(normal) 94 Simple5a(normal) 95 Simple5a(normal) 96 break001(ghci) 97 break006(ghci) 98 print019(ghci) 99 rw(normal) 95 100 tcfail065(normal) 96 101 tcfail068(normal) … … 106 111 * Relf2: VALID. Type family BUG. 107 112 * Simple5a: VALID. Error message changed. 108 * ~~Simple5a~~: VALID. Changed error message for data families, BUT the new error message is cryptic. 109 113 * ~~break001~~: INVALID. GHC panic instead of printing error message about ambiguous variable. 110 114 * ~~break006~~: INVALID. Seems to be the same problem as break001. 111 115 * ~~print019~~: INVALID. Seems to be the same problem as break001. 112 * ~~rw~~: VALID. Changed error message for GADTs. Seems to be the same behaviour as in Simple5a. 116 * 113 117 * ~~tc210~~: INVALID (matching `forall a.a -> Int` against `Int -> Int fails). 114 118 * ~~tc211~~: INVALID (tests impredicative types).