(j3.2006) Does anybody remember why ...?
Van Snyder
Van.Snyder
Thu Dec 15 21:28:49 EST 2011
On Thu, 2011-12-15 at 17:38 -0800, Malcolm Cohen wrote:
> >Does anybody remember why a BLOCK construct is not mentioned in 16.5.1.4
> >[10-007r1:443:27] as having access to its host instance by host
> >association?
>
> Yes.(*)
>
> >Shouldn't the rules in 16.5.1.4p2 [10-007r1:443:35ff] apply to BLOCK
> >constructs? I don't see where they're applied.
>
> I think they are not necessary. BLOCK constructs are handled in 16.4 not 16.5.
But 16.4 seems to be incomplete (#).
> >If a BLOCK construct could access its host instance by host association,
> >items (5) and (6) in 7.1.11p2 [10-007r1:150:15-18] wouldn't be needed,
> >because of item (4).
>
> Yes but it doesn't so they're not unnecessary.
>
> (*) Basically, it does not have access to entities in its "host instance"
> (whatever that is - it has none) by host association. The entities you are
> thinking of have "inclusive scope" - unlike the situation with e.g. internal
> procedures where we say that X in the host and X in the local are two separate
> entities that are associated by host association, with BLOCK we say that X is
> the same entity throughout the host and the BLOCK (we say this by giving X
> "inclusive scope").
(#) Where a construct entity is declared in a BLOCK construct, we don't
say the equivalent of [444:21], "is a local identifier ... and any
entity of the host that has this as its nongeneric name is inaccessible
by that that name..." -- or at least if we do, I couldn't find where.
16.4p2 [10-007r1:442:18-19] handles the equivalent thing for statement
entities, but I couldn't find where we do the same thing for construct
entities.
>
> Cheers,
More information about the J3
mailing list