mirror of
https://github.com/OpenMP/Examples.git
synced 2025-04-07 23:22:11 +01:00
30 lines
516 B
Fortran
30 lines
516 B
Fortran
! @@name: fort_race.1f
|
|
! @@type: F-free
|
|
! @@compilable: yes
|
|
! @@linkable: no
|
|
! @@expect: rt-error
|
|
SUBROUTINE SHARED_RACE
|
|
|
|
INCLUDE "omp_lib.h" ! or USE OMP_LIB
|
|
|
|
REAL A(20)
|
|
INTEGER MYTHREAD
|
|
|
|
!$OMP PARALLEL SHARED(A) PRIVATE(MYTHREAD)
|
|
|
|
MYTHREAD = OMP_GET_THREAD_NUM()
|
|
IF (MYTHREAD .EQ. 0) THEN
|
|
CALL SUB(A(1:10)) ! compiler may introduce writes to A(6:10)
|
|
ELSE
|
|
A(6:10) = 12
|
|
ENDIF
|
|
|
|
!$OMP END PARALLEL
|
|
|
|
END SUBROUTINE SHARED_RACE
|
|
|
|
SUBROUTINE SUB(X)
|
|
REAL X(*)
|
|
X(1:5) = 4
|
|
END SUBROUTINE SUB
|