llvm/flang/test/Semantics/symbol02.f90

! RUN: %python %S/test_symbols.py %s %flang_fc1
! Test host association in module subroutine and internal subroutine.

!DEF: /m Module
module m
 !DEF: /m/t PUBLIC DerivedType
 type :: t
 end type
 !REF: /m/t
 !DEF: /m/x PUBLIC ObjectEntity TYPE(t)
 type(t) :: x
 interface
  !DEF: /m/s3 MODULE, PUBLIC (Subroutine) Subprogram
  !DEF: /m/s3/y ObjectEntity TYPE(t)
  module subroutine s3(y)
   !REF: /m/t
   !REF: /m/s3/y
   type(t) :: y
  end subroutine
 end interface
contains
 !DEF: /m/s PUBLIC (Subroutine) Subprogram
 subroutine s
  !REF: /m/t
  !DEF: /m/s/y ObjectEntity TYPE(t)
  type(t) :: y
  !REF: /m/s/y
  !REF: /m/x
  y = x
  !DEF: /m/s/s (Subroutine) HostAssoc
  call s
 contains
  !DEF: /m/s/s2 (Subroutine) Subprogram
  subroutine s2
   !REF: /m/x
   !REF: /m/s/y
   !REF: /m/t
   !REF: /m/s/s
   import, only: x, y, t, s
   !REF: /m/t
   !DEF: /m/s/s2/z ObjectEntity TYPE(t)
   type(t) :: z
   !REF: /m/s/s2/z
   !REF: /m/x
   z = x
   !REF: /m/s/s2/z
   !DEF: /m/s/s2/y HostAssoc TYPE(t)
   z = y
   !REF: /m/s/s
   call s
  end subroutine
 end subroutine
end module