summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/entry_10.f90
blob: 154d44ea9ba9b43d9076f6e716eae5086e6275a8 (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
32
33
34
35
36
! { dg-do run }
! Test fix for PR31474, in which the use of ENTRYs as module
! procedures in a generic interface would cause an internal error.
!
! Contributed by Michael Richmond <michael.a.richmond@nasa.gov>
!
module a
  interface b
    module procedure c, d
  end interface
contains
  real function d (i)
    real c, i
    integer j
    d = 1.0
    return
  entry c (j)
    d = 2.0
  end function
  real function e (i)
    real f, i
    integer j
    e = 3.0
    return
  entry f (j)
    e = 4.0
  end function
end module

  use a
  if (b (1.0) .ne. 1.0) call abort ()
  if (b (1  ) .ne. 2.0) call abort ()
  if (e (1.0) .ne. 3.0) call abort ()
  if (f (1  ) .ne. 4.0) call abort ()
end
! { dg-final { cleanup-modules "a" } }