Update concepts branch to revision 131834
[official-gcc.git] / gcc / testsuite / gfortran.dg / result_in_spec_2.f90
blobcffa2300c20dd6a44b12bdda132a59e994052893
1 ! { dg-do run }
2 ! Tests the fix for PR32047, in which the null agument
3 ! function for the character length would cause an ICE.
5 ! Contributed by Tobias Burnus <burnus@gcc.gnu.org >
7 module test1
8 implicit none
9 contains
10 character(f()) function test2() result(r)
11 interface
12 pure function f()
13 integer f
14 end function f
15 end interface
16 r = '123'
17 end function test2
18 end module test1
20 pure function f()
21 integer :: f
22 f = 3
23 end function f
25 program test
26 use test1
27 implicit none
28 if(len (test2()) /= 3) call abort ()
29 if(test2() /= '123') call abort ()
30 end program test
31 ! { dg-final { cleanup-modules "test1" } }