* tree-loop-distribution.c (struct partition): New field recording
[official-gcc.git] / gcc / testsuite / gfortran.dg / derived_function_interface_1.f90
blob24a009509128f9ba121370cbd031ef567042ad8e
1 ! { dg-do compile }
2 ! Tests the fix for PR29634, in which an ICE would occur in the
3 ! interface declaration of a function with an 'old-style' type
4 ! declaration. When fixed, it was found that the error message
5 ! was not very helpful - this was fixed.
7 ! Contributed by Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
9 module kinds
10 type foo
11 integer :: i
12 end type foo
13 end module
15 type(foo) function ext_fun()
16 use kinds
17 ext_fun%i = 1
18 end function ext_fun
20 use kinds
22 interface fun_interface
23 type(foo) function fun()
24 use kinds
25 end function fun
26 end interface
28 interface ext_fun_interface
29 type(foo) function ext_fun()
30 use kinds
31 end function ext_fun
32 end interface
34 type(foo) :: x
36 x = ext_fun ()
37 print *, x%i
39 contains
41 type(foo) function fun() ! { dg-error "already has an explicit interface" }
42 end function fun ! { dg-error "Expecting END PROGRAM" }
44 end