https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93833
kargl at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kargl at gcc dot gnu.org --- Comment #2 from kargl at gcc dot gnu.org --- It is not clear to me why ice-on-valid-code is set here. The code is clearly invalid. However, it should not cause and ICE. To be clear, in 'associate (y => [c])', c is referenced but it has not been allocated. Simply doing program p character(:), allocatable :: c contains subroutine s c = 'steve' associate (y => [c]) if (any(y /= [c])) stop end associate end end allows the code to compile and execute correctly.