This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: incompatibility with OpenMP API v3.1.
- From: "N.M. Maclaren" <nmm1 at cam dot ac dot uk>
- To: Paul Kapinos <kapinos at rz dot rwth-aachen dot de>
- Cc: fortran at gcc dot gnu dot org
- Date: 28 Sep 2012 19:37:17 +0100
- Subject: Re: incompatibility with OpenMP API v3.1.
- References: <5065E4E7.9050104@rz.rwth-aachen.de>
On Sep 28 2012, Paul Kapinos wrote:
Looking into OpenMP 3.1 specification (p.108 / PDF p.116):
> If an array with the ALLOCATABLE attribute is allocated, then each
> thread's copy of that array must be allocated with the same bounds.
==> I interpret this as "ALLOCATABLE components allowed".
I don't. I interpret it as forbidding the user to reallocate a COPYIN
private allocatable variable in a parallel region. Certainly, if it
doesn't mean that, it makes no sense whatsoever.
That being said, however, the Fortran standard does define intrinsic
assignment for derived types with allocatable components in a way that
the COPYIN clause makes sense (specifically lines 8-9 on page 108) so
your point stands for a different reason.
Regards,
Nick Maclaren.