(j3.2006) (SC22WG5.5640) Comment on Corrigendum 4
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