(j3.2006) (SC22WG5.5640) Comment on Corrigendum 4

Van Snyder Van.Snyder
Thu Jan 21 15:38:59 EST 2016

I don't think this makes a difference.

We introduced "potential subobject component" as a replacement for
"subcomponent" in several places.  A subcomponent is a direct component
that is a subobject.  A <data-ref> that has a final <part-ref> with the
pointer attribute is a subobject in contexts that pertain to its pointer
association status.  A direct component is a component, or a direct
component of a nonpointer nonallocatable component.  I.e., a direct
component can have the pointer attribute, and therefore a subcomponent
can have the pointer attribute.

A potential subobject component is a nonpointer component or a potential
subobject component of a nonpointer component.  I.e., it cannot have the
pointer attribute, and the elaboration does not stop with allocatable
components (as it does for direct components).

I believe that in all the places where Corrigendum 4 replaces
"subcomponent" with "potential subobject component", it doesn't matter
that the described entity cannot be a pointer (usually because the
described entity was already prohibited from being a pointer), i.e., the
slight inconsistency is inconsequential.

I believe it is important that the elaboration of "potential subobject
component" does not stop with allocatable components, because the
definition of "subobject" (with respect to <data-ref> and <part-name>
does not stop with allocatable components.

Therefore, I believe this aspect of Corrigendum 4 is correct, but it
does bear pondering.

Does anybody disagree?

More information about the J3 mailing list