1! { dg-do compile }
2
3module m
4 integer, allocatable :: a(:), b(:), c(:), d(:)
5end module m
6
7subroutine foo
8  use m
9  implicit none
10  integer :: i
11
12  !$omp simd nontemporal (a, b) aligned (a, b, c)
13  do i = 1, ubound(a, dim=1)
14    a(i) = b(i) + c(i)
15  end do
16
17  !$omp simd nontemporal (d) nontemporal (d)	! { dg-error "'d' present on multiple clauses" }
18  do i = 1, ubound(d, dim=1)
19    d(i) = 2 * c(i)
20  end do
21
22  !$omp simd nontemporal (a, b, b)		! { dg-error "'b' present on multiple clauses" }
23  do i = 1, ubound(a, dim=1)
24    a(i) = a(i) + b(i) + c(i)
25  end do
26end subroutine foo
27