! RUN: %python %S/test_modfile.py %s %flang_fc1 ! Ensure that interfaces, which are internal to procedures and are used to ! define the interface of dummy or return value procedures, are included in ! .mod files. module m implicit none contains function f(x) real, intent(in) :: x abstract interface subroutine used_int(x, p) implicit none real, intent(out) :: x interface subroutine inner_int(x) implicit none real, intent(out) :: x end subroutine inner_int end interface procedure(inner_int) :: p end subroutine used_int pure logical function unused_int(i) implicit none integer, intent(in) :: i end function unused_int end interface procedure(used_int), pointer :: f f => null() contains subroutine internal() end subroutine internal end function f end module m !Expect: m.mod !module m !contains !function f(x) !real(4),intent(in)::x !abstract interface !subroutine used_int(x,p) !real(4),intent(out)::x !interface !subroutine inner_int(x) !real(4),intent(out)::x !end !end interface !procedure(inner_int)::p !end !end interface !procedure(used_int),pointer::f !end !end