xref: /llvm-project/flang/test/Semantics/OpenACC/acc-wait-validity.f90 (revision 6c1ac141d3c98af9738bc77fcb55602cbff7751f)
1! RUN: %python %S/../test_errors.py %s %flang -fopenacc
2
3! Check OpenACC clause validity for the following construct and directive:
4!   2.16.13 Wait
5
6program openacc_wait_validity
7
8  implicit none
9
10  logical :: ifCondition = .TRUE.
11
12  !$acc wait
13
14  !$acc wait async
15
16  !$acc wait(1)
17  !$acc wait(1, 2)
18
19  !$acc wait(queues: 1)
20  !$acc wait(queues: 1, 2)
21
22  !$acc wait(devnum: 1: 3)
23  !$acc wait(devnum: 1: 3, 4)
24
25  !$acc wait(devnum: 1: queues: 3)
26  !$acc wait(devnum: 1: queues: 3, 4)
27
28  !$acc wait(1) if(.true.)
29
30  !ERROR: At most one IF clause can appear on the WAIT directive
31  !$acc wait(1) if(.true.) if(.false.)
32
33  !$acc wait(1) if(.true.) async
34
35  !$acc wait(1) if(ifCondition) async
36
37  !$acc wait(1) if(.true.) async(1)
38
39  !ERROR: At most one ASYNC clause can appear on the WAIT directive
40  !$acc wait(1) if(.true.) async(1) async
41
42end program openacc_wait_validity
43