[PATCH] Fortran: fix invalid rank error in ASSOCIATED when rank is remapped [PR77652]
Harald Anlauf
anlauf@gmx.de
Mon Jul 25 16:01:04 GMT 2022
Hi Mikael, all,
a discussion in the Intel compiler forum suggests that the F2018
standard prohibits such use of the ASSOCIATED intrinsic.
https://community.intel.com/t5/Intel-Fortran-Compiler/Intel-rejects-ASSOCIATED-pointer-target-for-non-equal-ranks/m-p/1402799/highlight/true#M162159
As a consequence, the PR is likely invalid, as is the patch.
Withdrawing.
Sorry for the noise!
Harald
> Gesendet: Montag, 25. Juli 2022 um 12:43 Uhr
> Von: "Mikael Morin" <morin-mikael@orange.fr>
> An: "Harald Anlauf" <anlauf@gmx.de>, "fortran" <fortran@gcc.gnu.org>, "gcc-patches" <gcc-patches@gcc.gnu.org>
> Betreff: Re: [PATCH] Fortran: fix invalid rank error in ASSOCIATED when rank is remapped [PR77652]
>
> Le 21/07/2022 à 22:12, Harald Anlauf via Fortran a écrit :
> > Dear all,
> >
> > the rank check for ASSOCIATED (POINTER, TARGET) did not allow all
> > rank combinations that were allowed in pointer assignment for
> > newer versions of the Fortran standard (F2008+). Fix the logic.
> >
> So, if I understand correctly the (fixed) logic, it is:
> f2008+ => no check
> f2003 => check target’s rank different from 1
> up to f95 => check pointer’s rank equals target’s
>
>
> I think one check is missing, that is when pointer is scalar and the
> target is non-scalar (either rank 1 or not). This case should also be
> rejected for f2003+, not just up to f95.
>
> Mikael
>
More information about the Fortran
mailing list