Merge from mainline
[official-gcc.git] / libgomp / testsuite / libgomp.fortran / appendix-a / a.22.8.f90
blobcf6d90ee828064697deda03e9b85b32dd31e0bc6
1 ! { dg-do run }
2 ! { dg-require-effective-target tls_runtime }
3 MODULE A22_MODULE8
4 REAL, POINTER :: WORK(:)
5 SAVE WORK
6 !$OMP THREADPRIVATE(WORK)
7 END MODULE A22_MODULE8
8 SUBROUTINE SUB1(N)
9 USE A22_MODULE8
10 !$OMP PARALLEL PRIVATE(THE_SUM)
11 ALLOCATE(WORK(N))
12 CALL SUB2(THE_SUM)
13 WRITE(*,*)THE_SUM
14 !$OMP END PARALLEL
15 END SUBROUTINE SUB1
16 SUBROUTINE SUB2(THE_SUM)
17 USE A22_MODULE8
18 WORK(:) = 10
19 THE_SUM=SUM(WORK)
20 END SUBROUTINE SUB2
21 PROGRAM A22_8_GOOD
22 N = 10
23 CALL SUB1(N)
24 END PROGRAM A22_8_GOOD