diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2020-05-31 10:26:40 +0200 |
---|---|---|
committer | Giuliano Belinassi <giuliano.belinassi@usp.br> | 2020-08-17 13:09:27 -0300 |
commit | 49e29cdd6193a2f2d3cbb6c40a732d7e433f99a0 (patch) | |
tree | abaff71a23745421bd10528656de763122c0eee0 /gcc/gimple-array-bounds.cc | |
parent | c78815ada99d4dea2118e2df1b01d65ebd7bb1b0 (diff) | |
download | gcc-49e29cdd6193a2f2d3cbb6c40a732d7e433f99a0.zip gcc-49e29cdd6193a2f2d3cbb6c40a732d7e433f99a0.tar.gz gcc-49e29cdd6193a2f2d3cbb6c40a732d7e433f99a0.tar.bz2 |
Finalization depends on the expression, not on the component.
This patch fixes a 8/9/10/11 regression, where finalized types
were not finalized (and deallocated), which led to memory
leaks.
gcc/fortran/ChangeLog:
2020-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/94361
* class.c (finalize_component): Use expr->finalized instead of
comp->finalized.
* gfortran.h (gfc_component): Remove finalized member.
(gfc_expr): Add it here instead.
gcc/testsuite/ChangeLog:
2020-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/94361
* gfortran.dg/finalize_28.f90: Adjusted free counts.
* gfortran.dg/finalize_33.f90: Likewise.
* gfortran.dg/finalize_34.f90: Likewise.
* gfortran.dg/finalize_35.f90: New test.
Diffstat (limited to 'gcc/gimple-array-bounds.cc')
0 files changed, 0 insertions, 0 deletions