Draft JVMS changes for Nestmates
john.r.rose at oracle.com
Thu Apr 20 00:09:44 UTC 2017
On Apr 19, 2017, at 12:56 AM, David Holmes <david.holmes at 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
>> 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.)
More information about the valhalla-spec-observers