]> git.ipfire.org Git - thirdparty/gcc.git/commit
Fortran: Free alloc. comp. in allocated coarrays only.
authorAndre Vehreschild <vehre@gcc.gnu.org>
Thu, 28 Sep 2023 07:30:12 +0000 (09:30 +0200)
committerAndre Vehreschild <vehre@gcc.gnu.org>
Fri, 29 Sep 2023 12:54:42 +0000 (14:54 +0200)
commita680274616ec6b26ccfdcee400ed7f54e341d40c
tree879c2beab585e70d2e145901c0be725767703642
parent574cec45b2674a2d575a06fc8e73851f9af4bb4c
Fortran: Free alloc. comp. in allocated coarrays only.

When freeing allocatable components of an allocatable coarray, add
a check that the coarray is still allocated, before accessing the
components.

This patch adds to PR fortran/37336, but does not fix it completely.

gcc/fortran/ChangeLog:
PR fortran/37336
* trans-array.cc (structure_alloc_comps): Deref coarray.
(gfc_trans_deferred_array): Add freeing of components after
check for allocated coarray.

gcc/testsuite/ChangeLog:
PR fortran/37336
* gfortran.dg/coarray/alloc_comp_6.f90: New test.
* gfortran.dg/coarray/alloc_comp_7.f90: New test.
gcc/fortran/trans-array.cc
gcc/testsuite/gfortran.dg/coarray/alloc_comp_6.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/coarray/alloc_comp_7.f90 [new file with mode: 0644]