https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88304
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Reduced testcase: module pr88304 implicit none type t integer :: b = -1 end type t contains subroutine f1 (x) integer (kind = 4), intent(out) :: x x = 5 end subroutine f1 subroutine f2 () type(t) :: x call f3 if (x%b .ne. 5) stop 1 contains subroutine f3 call f1 (x%b) end subroutine f3 end subroutine f2 end module pr88304