30 lines
893 B
Fortran
30 lines
893 B
Fortran
! RUN: %python %S/test_symbols.py %s %flang_fc1
|
|
! Derived type forward reference regression case
|
|
|
|
!DEF: /MainProgram1/t2 DerivedType
|
|
type :: t2
|
|
!DEF: /MainProgram1/t1 DerivedType
|
|
!DEF: /MainProgram1/t2/ptr POINTER ObjectEntity TYPE(t1)
|
|
type(t1), pointer :: ptr
|
|
end type
|
|
!REF: /MainProgram1/t1
|
|
type :: t1
|
|
!DEF: /MainProgram1/t1/a ObjectEntity REAL(4)
|
|
real :: a
|
|
!REF: /MainProgram1/t2
|
|
!DEF: /MainProgram1/t1/p2 POINTER ObjectEntity TYPE(t2)
|
|
type(t2), pointer :: p2
|
|
!REF: /MainProgram1/t1
|
|
!DEF: /MainProgram1/t1/p1 POINTER ObjectEntity TYPE(t1)
|
|
type(t1), pointer :: p1
|
|
end type
|
|
!REF: /MainProgram1/t1
|
|
!DEF: /MainProgram1/x1 POINTER ObjectEntity TYPE(t1)
|
|
!DEF: /MainProgram1/x2 POINTER ObjectEntity TYPE(t1)
|
|
type(t1), pointer :: x1, x2
|
|
!REF: /MainProgram1/x2
|
|
!REF: /MainProgram1/t1/p1
|
|
!REF: /MainProgram1/t1/a
|
|
!REF: /MainProgram1/x1
|
|
x2%p1%a = x1%a
|
|
end program
|