Merge from mainline (163495:164578).
[official-gcc/graphite-test-results.git] / gcc / testsuite / gfortran.dg / dynamic_dispatch_11.f03
blobe4abcb2846eb2e4fe7b465900daefb3c63eb6f3c
1 ! { dg-do run }
3 ! PR 42769: [OOP] ICE in resolve_typebound_procedure
4 ! comment #27
6 ! Contributed by Janus Weil <janus@gcc.gnu.org>
9 module mod1
10   type :: t1
11   contains
12     procedure, nopass :: get => my_get
13   end type
14 contains 
15   integer function my_get()
16     my_get = 1
17   end function
18 end module
20 module mod2
21 contains 
22   integer function my_get()   ! must have the same name as the function in mod1
23     my_get = 2
24   end function
25 end module
27   use mod2
28   use mod1              ! order of use statements is important
29   class(t1),allocatable :: a
30   allocate(a)
31   if (a%get()/=1) call abort()
32 end
35 ! { dg-final { cleanup-modules "mod1 mod2" } }