Changes between Version 38 and Version 39 of TypeFunctionsTypeChecking


Ignore:
Timestamp:
Oct 11, 2006 3:59:29 AM (8 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsTypeChecking

    v38 v39  
    122122== Checking for overlapping data/newtype instances == 
    123123 
    124 === Overlap check of the instances within one module === 
     124=== Overlap check of the instances in the currently compiled module === 
    125125 
    126 We maintain a family instance environment in the `TcRnTypes.TcGblEnv` much like that for class instances.  We add instances to this environment as we type check them and perform an overlap check with each addition. 
     126We maintain a family instance environment in the `TcRnTypes.TcGblEnv` much like that for class instances.  We add instances to this environment, with `FamInst.addLocalFamInst`, as we type check them and perform an overlap check with each addition.  This overlap check includes all the instances in the EPS, too - again just like with class instance.  Hence, We simultaneously check the instances of the current module against all imported ones, too.  (This, of course, requires that we have them all in the EPS at that point.)