! RUN: %flang_fc1 -fdebug-pre-fir-tree -fopenmp %s | FileCheck %s
! Test structure of the Pre-FIR tree with OpenMP declarative construct
! CHECK: Module m
module m
real, dimension(10) :: x
! CHECK-NEXT: OpenMPDeclarativeConstruct
!$omp threadprivate(x)
end
! CHECK: End Module m
! CHECK: Module m2
module m2
integer, save :: i
! CHECK-NEXT: OpenMPDeclarativeConstruct
!$omp threadprivate(i)
contains
subroutine sub()
i = 1;
end
subroutine sub2()
i = 2;
end
end
! CHECK: End Module m2
! CHECK: Program main
program main
real :: y
! CHECK-NEXT: OpenMPDeclarativeConstruct
!$omp threadprivate(y)
end
! CHECK: End Program main
! CHECK: Subroutine sub1
subroutine sub1()
real, save :: p
! CHECK-NEXT: OpenMPDeclarativeConstruct
!$omp threadprivate(p)
end
! CHECK: End Subroutine sub1
! CHECK: Subroutine sub2
subroutine sub2()
real, save :: q
! CHECK-NEXT: OpenMPDeclarativeConstruct
!$omp threadprivate(q)
contains
subroutine sub()
end
end
! CHECK: End Subroutine sub2