https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120656
anlauf at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Last reconfirmed| |2025-06-14 Keywords| |wrong-code --- Comment #1 from anlauf at gcc dot gnu.org --- Confirmed when compiling with -O0 or -Og. Works here at -O1 and higher. However, valgrind complains: SIZE(F1) = 1 ==29400== Invalid read of size 8 ==29400== at 0x400B28: MAIN__ (pr120656.f90:18) ==29400== by 0x400C24: main (pr120656.f90:19) ==29400== Address 0x4f3ed10 is 8 bytes after a block of size 72 free'd ==29400== at 0x484470B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==29400== by 0x400B27: MAIN__ (pr120656.f90:18) ==29400== by 0x400C24: main (pr120656.f90:19) ==29400== Block was alloc'd at ==29400== at 0x48489BC: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==29400== by 0x400AEB: MAIN__ (pr120656.f90:18) ==29400== by 0x400C24: main (pr120656.f90:19) ==29400== SIZE(F2) = 1