]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gfortran.dg/goacc/list.f95
Merge current set of OpenACC changes from gomp-4_0-branch.
[thirdparty/gcc.git] / gcc / testsuite / gfortran.dg / goacc / list.f95
1 ! { dg-do compile }
2 ! { dg-additional-options "-fmax-errors=100" }
3
4 program test
5 implicit none
6
7 integer :: i, j, k, l, a(10)
8 common /b/ j, k
9 real, pointer :: p1 => NULL()
10 complex :: c, d(10)
11
12 !$acc parallel private(i)
13 !$acc end parallel
14
15 !$acc parallel private(a)
16 !$acc end parallel
17
18 !$acc parallel private(c, d)
19 !$acc end parallel
20
21 !$acc parallel private(i, j, k, l, a)
22 !$acc end parallel
23
24 !$acc parallel private (i) private (j)
25 !$acc end parallel
26
27 !$acc parallel private ! { dg-error "Unclassifiable OpenACC directive" }
28
29 !$acc parallel private() ! { dg-error "Syntax error" }
30
31 !$acc parallel private(a(1:3)) ! { dg-error "Syntax error" }
32
33 !$acc parallel private(10) ! { dg-error "Syntax error" }
34
35 !$acc parallel private(/b/, /b/) ! { dg-error "present on multiple clauses" }
36 !$acc end parallel
37
38 !$acc parallel private(i, j, i) ! { dg-error "present on multiple clauses" }
39 !$acc end parallel
40
41 !$acc parallel private(p1)
42 !$acc end parallel
43
44 !$acc parallel firstprivate(i)
45 !$acc end parallel
46
47 !$acc parallel firstprivate(c, d)
48 !$acc end parallel
49
50 !$acc parallel firstprivate(a)
51 !$acc end parallel
52
53 !$acc parallel firstprivate(i, j, k, l, a)
54 !$acc end parallel
55
56 !$acc parallel firstprivate (i) firstprivate (j)
57 !$acc end parallel
58
59 !$acc parallel firstprivate ! { dg-error "Unclassifiable OpenACC directive" }
60
61 !$acc parallel firstprivate() ! { dg-error "Syntax error" }
62
63 !$acc parallel firstprivate(a(1:3)) ! { dg-error "Syntax error" }
64
65 !$acc parallel firstprivate(10) ! { dg-error "Syntax error" }
66
67 !$acc parallel firstprivate (/b/, /b/) ! { dg-error "present on multiple clauses" }
68 !$acc end parallel
69
70 !$acc parallel firstprivate (i, j, i) ! { dg-error "present on multiple clauses" }
71 !$acc end parallel
72
73 !$acc parallel firstprivate(p1)
74 !$acc end parallel
75
76 !$acc parallel private (i) firstprivate (i) ! { dg-error "present on multiple clauses" }
77 !$acc end parallel
78
79 !$acc host_data use_device(i)
80 !$acc end host_data
81
82 !$acc host_data use_device(c, d)
83 !$acc end host_data
84
85 !$acc host_data use_device(a)
86 !$acc end host_data
87
88 !$acc host_data use_device(i, j, k, l, a)
89 !$acc end host_data
90
91 !$acc host_data use_device (i) use_device (j)
92 !$acc end host_data
93
94 !$acc host_data use_device ! { dg-error "Unclassifiable OpenACC directive" }
95
96 !$acc host_data use_device() ! { dg-error "Syntax error" }
97
98 !$acc host_data use_device(a(1:3)) ! { dg-error "Syntax error" }
99
100 !$acc host_data use_device(10) ! { dg-error "Syntax error" }
101
102 !$acc host_data use_device(/b/, /b/) ! { dg-error "present on multiple clauses" }
103 !$acc end host_data
104
105 !$acc host_data use_device(i, j, i) ! { dg-error "present on multiple clauses" }
106 !$acc end host_data
107
108 !$acc host_data use_device(p1) ! { dg-error "POINTER" }
109 !$acc end host_data
110
111 end program test