2018-09-30 Paul Thomas <pault@gcc.gnu.org>
[official-gcc.git] / gcc / testsuite / gfortran.dg / used_types_2.f90
blobc819f5e449a42d973373726e3cbf9a561d9e5f00
1 ! { dg-do compile }
2 ! Tests the fix for PR28630, in which a contained,
3 ! derived type function caused an ICE if its definition
4 ! was both host and use associated.
6 ! Contributed by Mark Hesselink <mhesseli@alumni.caltech.edu>
8 MODULE types
9 TYPE :: t
10 INTEGER :: i
11 END TYPE
12 END MODULE types
14 MODULE foo
15 USE types
16 CONTAINS
17 FUNCTION bar (x) RESULT(r)
18 USE types
19 REAL, INTENT(IN) :: x
20 TYPE(t) :: r
21 r = t(0)
22 END FUNCTION bar
23 END MODULE
26 LOGICAL FUNCTION foobar (x)
27 USE foo
28 REAL, INTENT(IN) :: x
29 TYPE(t) :: c
30 foobar = .FALSE.
31 c = bar (x)
32 END FUNCTION foobar