]> gcc.gnu.org Git - gcc.git/commit
Fortran: fix bounds-checking errors for CLASS array dummies [PR104908]
authorHarald Anlauf <anlauf@gmx.de>
Sat, 27 Jan 2024 16:41:43 +0000 (17:41 +0100)
committerHarald Anlauf <anlauf@gmx.de>
Wed, 31 Jan 2024 18:09:18 +0000 (19:09 +0100)
commit5741e5fc53161ccf2056e0670334ea528431feb7
tree77e32b16fd95dafae467db39dc731f173bdc7791
parenta523d05182df97d21d7e0393dfb1e48253ea5386
Fortran: fix bounds-checking errors for CLASS array dummies [PR104908]

Commit r11-1235 addressed issues with bounds of unlimited polymorphic array
dummies.  However, using the descriptor from sym->backend_decl does break
the case of CLASS array dummies.  The obvious solution is to restrict the
fix to the unlimited polymorphic case, thus keeping the original descriptor
in the ordinary case.

gcc/fortran/ChangeLog:

PR fortran/104908
* trans-array.cc (gfc_conv_array_ref): Restrict use of transformed
descriptor (sym->backend_decl) to the unlimited polymorphic case.

gcc/testsuite/ChangeLog:

PR fortran/104908
* gfortran.dg/pr104908.f90: New test.

(cherry picked from commit ce61de1b8a1bb3a22118e900376f380768f2ba59)
gcc/fortran/trans-array.cc
gcc/testsuite/gfortran.dg/pr104908.f90 [new file with mode: 0644]
This page took 0.07492 seconds and 6 git commands to generate.