Changes between Version 90 and Version 91 of TypeFunctionsStatus
- Sep 15, 2006 1:07:30 AM (10 years ago)
v90 v91 5 5 '''Current:''' 6 6 * Overlap check for data/newtype instances. 7 1. Routine that checks two `FamInst`s for overlap. Use it as part of the implementation of `addFamInsts`, called in `TcInstDcls.tcInstDecls1`. (Also extend `TcRnTypes.TcGblEnv` by a field containing a family instance environment.) 7 1. Routine that checks two `FamInst`s for overlap. 8 8 2. In `M.hi` store the names of all modules below (and including `M`) that contain family instances. Invariant: if `M` compiles, then none of those modlues have overlaps. 9 9 3. When compiling a new module `K`, union the sets from direct imports, plus `K` itself if it has family instances. If that union is a subset of any of the incoming ones, nothing to do! Otherwise, further checking needed.