entry_1.f90

来自「用于进行gcc测试」· F90 代码 · 共 48 行

F90
48
字号
! { dg-do run }! Test alternate entry points in a module procedure! Also check that references to sibling entry points are resolved correctly.module mcontainssubroutine indirecta (p)  call p (3, 4)end subroutinesubroutine indirectb (p)  call p (5)end subroutinesubroutine test1  implicit none  call indirecta (foo)  call indirectb (bar)end subroutinesubroutine foo(a, b)  integer a, b  logical, save :: was_foo = .false.  if ((a .ne. 3) .or. (b .ne. 4)) call abort  was_foo = .true.entry bar(a)  if (was_foo) then    if ((a .ne. 3) .or. (b .ne. 4)) call abort  else    if (a .ne. 5) call abort  end if  was_foo = .false.end subroutinesubroutine test2  call foo (3, 4)  call bar (5)end subroutineend moduleprogram p  use m  call foo (3, 4)  call bar (5)  call test1 ()  call test2 ()end program! { dg-final { cleanup-modules "m" } }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?