This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/60928] gfortran issue with allocatable components and OpenMP


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60928

--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> ---
(In reply to Sean Santos from comment #3)
> 'For a list item or the subobject of a list item with the ALLOCATABLE
> attribute:

Frankly, I fail to decipher what a "subobject of a list item with the
allocatable attribute" is. I think it means something like
   var%component
but it is not clear to me whether "var" or "component" or both have to (or may)
be arrays - and whether the "allocatable" applies to "var" or to "component.


It could be:
   array(:)%allocatable_component
or
   allocatable_array(:)%non_allocatable_component
or
   array(idx)%allocatable_component
or maybe also
   scalar%allocatable_component


The first one does not make sense in terms of Fortran 2008 itself:
   "C618 (R611) There shall not be more than one part-ref with nonzero rank. A
part-name to the right of a part-ref with nonzero rank shall not have the
ALLOCATABLE or POINTER attribute."

In terms of Fortran, the allocatable_array in the second one would have to be
always allocated before doing the whole-array reference.

The last two are fine in terms of Fortran, but I think they do not really match
how I understand the wording in the OpenMPv4 spec.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]