xref: /llvm-project/flang/test/Semantics/OpenMP/deprecation.f90 (revision 092a819e94da3fc0cac6982e99861546237fcb04)
1! RUN: %python %S/../test_errors.py %s %flang_fc1 -fopenmp -Werror
2
3! Check for deprecation of master directive and its combined/composite variants
4
5subroutine test_master()
6  integer :: c = 1
7!WARNING: OpenMP directive MASTER has been deprecated, please use MASKED instead.
8  !$omp master
9  c = c + 1
10  !$omp end master
11end subroutine
12
13subroutine test_parallel_master
14  integer :: c = 2
15!WARNING: OpenMP directive PARALLEL MASTER has been deprecated, please use PARALLEL MASKED instead.
16  !$omp parallel master
17  c = c + 2
18  !$omp end parallel master
19end subroutine
20
21subroutine test_master_taskloop_simd()
22  integer :: i, j = 1
23!WARNING: OpenMP directive MASTER TASKLOOP SIMD has been deprecated, please use MASKED TASKLOOP SIMD instead.
24  !$omp master taskloop simd
25  do i=1,10
26   j = j + 1
27  end do
28  !$omp end master taskloop simd
29end subroutine
30
31subroutine test_master_taskloop
32  integer :: i, j = 1
33!WARNING: OpenMP directive MASTER TASKLOOP has been deprecated, please use MASKED TASKLOOP instead.
34  !$omp master taskloop
35  do i=1,10
36   j = j + 1
37  end do
38  !$omp end master taskloop
39end subroutine
40
41subroutine test_parallel_master_taskloop_simd
42  integer :: i, j = 1
43!WARNING: OpenMP directive PARALLEL MASTER TASKLOOP SIMD has been deprecated, please use PARALLEL_MASKED TASKLOOP SIMD instead.
44  !$omp parallel master taskloop simd
45  do i=1,10
46   j = j + 1
47  end do
48  !$omp end parallel master taskloop simd
49end subroutine
50
51subroutine test_parallel_master_taskloop
52  integer :: i, j = 1
53!WARNING: OpenMP directive PARALLEL MASTER TASKLOOP has been deprecated, please use PARALLEL MASKED TASKLOOP instead.
54  !$omp parallel master taskloop
55  do i=1,10
56   j = j + 1
57  end do
58  !$omp end parallel master taskloop
59end subroutine
60