36 lines
742 B
Fortran
36 lines
742 B
Fortran
! { dg-do run }
|
|
! Tests the fix for PR32926, in which the call to fcn
|
|
! in bar would cause an ICE because it had not been referenced
|
|
! in the namespace where it was declared.
|
|
!
|
|
! Contributed by Ralph Baker Kearfott <rbk@louisiana.edu>
|
|
!
|
|
subroutine foobar1
|
|
common // chr
|
|
character(8) :: chr
|
|
chr = "foobar1"
|
|
end subroutine
|
|
subroutine foobar2
|
|
common // chr
|
|
character(8) :: chr
|
|
chr = "foobar2"
|
|
end subroutine
|
|
|
|
subroutine foo (fcn)
|
|
external fcn
|
|
call bar
|
|
contains
|
|
subroutine bar
|
|
call fcn
|
|
end subroutine bar
|
|
end subroutine foo
|
|
|
|
external foo, foobar1, foobar2
|
|
common // chr
|
|
character(8) :: chr
|
|
call foo (foobar1)
|
|
if (chr .ne. "foobar1") call abort ()
|
|
call foo (foobar2)
|
|
if (chr .ne. "foobar2") call abort ()
|
|
end
|