summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/module_interface_2.f90
blob: 1f9fde81edb4e4afc7753e72f8d5f68afdcc9418 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
! { dg-do compile }
! Tests the fix for PR29464, in which the second USE of the generic
! interface caused an error.
!
! Contributed by Vivek Rao <vivekrao4@yahoo.com>
!
module foo_mod
  implicit none
  interface twice
     module procedure twice_real
  end interface twice
contains
  real function twice_real(x)
    real :: x
    twice_real = 2*x
  end function twice_real
end module foo_mod

  subroutine foobar ()
    use foo_mod, only: twice, twice
    print *, twice (99.0)
  end subroutine foobar

  program xfoo
  use foo_mod, only: two => twice, dbl => twice
  implicit none
  call foobar ()
  print *, two (2.3)
  print *, dbl (2.3)
end program xfoo
! { dg-final { cleanup-modules "foo_mod" } }