aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/backend/rust-compile-struct-field-expr.h
diff options
context:
space:
mode:
authorAndre Vehreschild <vehre@gcc.gnu.org>2025-06-25 14:46:16 +0200
committerAndre Vehreschild <vehre@gcc.gnu.org>2025-07-08 09:48:43 +0200
commitd1f05661fa6c8a6ea6f59ad365a84469100e425e (patch)
treed859869adeb530d8fb751e3534c775f6ba37f0be /gcc/rust/backend/rust-compile-struct-field-expr.h
parentaa5ae523e84a97bf3a582ea0fa73d959afa9b9c7 (diff)
downloadgcc-d1f05661fa6c8a6ea6f59ad365a84469100e425e.zip
gcc-d1f05661fa6c8a6ea6f59ad365a84469100e425e.tar.gz
gcc-d1f05661fa6c8a6ea6f59ad365a84469100e425e.tar.bz2
Fortran: Ensure finalizers are created correctly [PR120637]
Finalize_component freeed an expression that it used to remember which components in which context it had finalized already. While it makes sense to free the copy of the expression, if it is unused, it causes issues, when comparing to a non existent expression. This is now detected by returning true, when the expression has been used. PR fortran/120637 gcc/fortran/ChangeLog: * class.cc (finalize_component): Return true, when a finalizable component was detect and do not free it. gcc/testsuite/ChangeLog: * gfortran.dg/asan/finalize_1.f90: New test.
Diffstat (limited to 'gcc/rust/backend/rust-compile-struct-field-expr.h')
0 files changed, 0 insertions, 0 deletions