1C PR fortran/25162 2C { dg-do run } 3C { dg-require-effective-target tls_runtime } 4 PROGRAM PR25162 5 CALL TEST1 6 CALL TEST2 7 END 8 SUBROUTINE TEST1 9 DOUBLE PRECISION BPRIM 10 COMMON /TESTCOM/ BPRIM(100) 11C$OMP THREADPRIVATE(/TESTCOM/) 12 INTEGER I 13 DO I = 1, 100 14 BPRIM( I ) = DBLE( I ) 15 END DO 16 RETURN 17 END 18 SUBROUTINE TEST2 19 DOUBLE PRECISION BPRIM 20 COMMON /TESTCOM/ BPRIM(100) 21C$OMP THREADPRIVATE(/TESTCOM/) 22 INTEGER I, IDUM(50) 23 DO I = 1, 50 24 IDUM(I) = I 25 END DO 26C$OMP PARALLEL COPYIN(/TESTCOM/) NUM_THREADS(4) 27 CALL TEST3 28C$OMP END PARALLEL 29 RETURN 30 END 31 SUBROUTINE TEST3 32 DOUBLE PRECISION BPRIM 33 COMMON /TESTCOM/ BPRIM(100) 34C$OMP THREADPRIVATE(/TESTCOM/) 35 INTEGER K 36 DO K = 1, 10 37 IF (K.NE.BPRIM(K)) CALL ABORT 38 END DO 39 RETURN 40 END 41