https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98263
anlauf at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |anlauf at gcc dot gnu.org Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed| |2020-12-13 --- Comment #2 from anlauf at gcc dot gnu.org --- Confirmed. A slightly modified version of pr93337.f90 suggests that the invalid read happens when dealing with the assignment: program p type t character(:), allocatable :: a end type t class(t), allocatable :: y class(t) :: x y = x end Swapping x and y in the assignment makes the invalid read disappear. Either the parsing or resolution of the assignment causes the issue, or there is corruption during error recovery. Apparently the fix for PR93337 uncovered this (latent) issue.