aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/generic_6.f90
blob: 5a8bc03f11703991cfc8f188d45b6f09e87fe28d (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
37
38
39
40
41
42
43
44
45
46
47
48
! { dg-do compile }
! Tests the patch for PR28873, in which the call create () would cause an
! error because resolve.c(resolve_generic_s) was failing to look in the
! parent namespace for a matching specific subroutine. This, in fact, was
! a regression due to the fix for PR28201.
!
! Contributed by Drew McCormack  <drewmccormack@mac.com> 
!
module A
  private 
  interface create
    module procedure create1 
  end interface
  public :: create
contains
  subroutine create1
    print *, "module A"
  end subroutine
end module

module B
  private 
  interface create
    module procedure create1 
  end interface
  public :: create
contains
  subroutine create1(a)
    integer a
    print *, "module B"
  end subroutine
end module

module C
  use A
  private
  public useCreate
contains
  subroutine useCreate
    use B
    call create()
    call create(1)
  end subroutine
end module

  use c
  call useCreate
end