! { dg-do compile }
! Test fix for PR37583, in which:
! (i) the reference to glocal prior to the ENTRY caused an internal
! error and
! (ii) the need for a RECURSIVE attribute was ignored.
!
! Contributed by Arjen Markus <arjen.markus@wldelft.nl>
!
module gsub
contains
recursive subroutine suba( g )   ! prefix with "RECURSIVE"
   interface
       real function g(x)
       real x
       end function
   end interface
   real :: x, y
   call mysub( glocala )
   return
entry glocala( x, y )
   y = x
end subroutine
subroutine subb( g )
   interface
       real function g(x)
       real x
       end function
   end interface
   real :: x, y
   call mysub( glocalb ) ! { dg-warning "Non-RECURSIVE" }
   return
entry glocalb( x, y )
   y = x
end subroutine
end module
