diff options
author | Andre Vehreschild <vehre@gcc.gnu.org> | 2025-03-20 13:37:21 +0100 |
---|---|---|
committer | Andre Vehreschild <vehre@gcc.gnu.org> | 2025-03-21 09:27:01 +0100 |
commit | 0f344846a62c8863375909d8d6b435b4b5fd35a0 (patch) | |
tree | 773dd8673f5222f07cec476fb593757128976609 /gcc/rust/checks/errors/rust-unsafe-checker.cc | |
parent | de725a153f8968713d0edbd43ebcc4168ebabc62 (diff) | |
download | gcc-0f344846a62c8863375909d8d6b435b4b5fd35a0.zip gcc-0f344846a62c8863375909d8d6b435b4b5fd35a0.tar.gz gcc-0f344846a62c8863375909d8d6b435b4b5fd35a0.tar.bz2 |
Fortran: Fix double free on polymorphic array dummy argument [PR119349]
Calling elemental routines with polymorphic formals leads to generation
of a temporary polymorphic variable and code for its deallocation.
Sourcing this element from an array constructor the latter now is
prevented from generating a second deallocation.
PR fortran/119349
gcc/fortran/ChangeLog:
* trans-expr.cc (gfc_conv_procedure_call): Prevent deallocation
of array temporary for polymorphic temporary argument.
gcc/testsuite/ChangeLog:
* gfortran.dg/class_79.f90: New test.
Diffstat (limited to 'gcc/rust/checks/errors/rust-unsafe-checker.cc')
0 files changed, 0 insertions, 0 deletions