0
|
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
|
|
25
|
|
26 ! { dg-final { cleanup-modules "a22_module8" } }
|