(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