https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96102
G. Steinmetz <gs...@t-online.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-invalid-code --- Comment #1 from G. Steinmetz <gs...@t-online.de> --- For reference a valid and working variant : $ cat z0.f90 module m integer :: n = 2 contains subroutine s if ( n() /= 0 ) stop 1 print *, n() contains integer function n() n = 0 end end end program p use m call s end $ gfortran-11-20200705 z0.f90 && ./a.out 0 $