On Apr 19, 2017, at 12:56 AM, David Holmes <david.hol...@oracle.com> wrote: > >> I don't see how that is a significant concern. The symbol bodies are >> hot in cache >> at the point we would check prefixes, since they are already being >> scanned for other >> purposes, such as initial interning, and also syntax checking. Existing >> processing >> is exactly as deep (or shallow) as the checks I want. > > I don't follow that. If I'm loading a nest-top class and validating its NM > entries none of those entries need have been loaded yet and so none will be > in the cache.
I see what the problem is: The only checking I am proposing is syntax checking on the names. If by "deep checking" you mean loading classes from the names, I agree, we don't want to do that. The MemberOfNest attribute is passive. It does not need to initiate loads; it just needs to validate claims of nest membership by other classes. (I even doubt Dan's assertion that in some corner cases, when the nest-host is trying out a private access, there must be some loading done to validate the access. Probably we can get away with no loading at all, just name checks against already-loaded classes.) — John