xref: /llvm-project/flang/test/Semantics/OpenMP/parallel-shared04.f90 (revision 502bea25bdc07d1811b8bfea1c2e6bfa8617f72f)
1!RUN: %python %S/../test_errors.py %s %flang -fopenmp
2! OpenMP Version 4.5
3! 2.15.3.2 parallel shared Clause
4program omp_parallel_shared
5  integer :: i, j, a(10), b(10), c(10)
6  integer :: k = 10
7  type my_type
8    integer :: array(10)
9  end type my_type
10
11  type(my_type) :: my_var
12
13  real :: arr(10)
14  integer :: intx = 10
15
16  do i = 1, 10
17    arr(i) = 0.0
18  end do
19
20  !ERROR: A variable that is part of another variable (as an array or structure element) cannot appear in a SHARED clause
21  !$omp parallel shared(arr,intx,my_var%array(1))
22  do i = 1, 10
23    c(i) = a(i) + b(i) + k
24    my_var%array(i) = k+intx
25    arr(i) = k
26  end do
27  !$omp end parallel
28end program omp_parallel_shared
29