Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/g++.dg/gomp/sharing-2.C @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 04ced10e8804 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
3 struct T | 3 struct T |
4 { | 4 { |
5 int i; | 5 int i; |
6 mutable int j; | 6 mutable int j; |
7 }; | 7 }; |
8 struct U | |
9 { | |
10 int i, j; | |
11 }; | |
8 struct S | 12 struct S |
9 { | 13 { |
10 const static int d = 1; | 14 const static int d = 1; |
11 const static T e; | 15 const static T e; |
16 const static U f; | |
12 void foo (int, T); | 17 void foo (int, T); |
13 }; | 18 }; |
14 | 19 |
15 const int S::d; | 20 const int S::d; |
16 const T S::e = { 2, 3 }; | 21 const T S::e = { 2, 3 }; |
22 const U S::f = { 4, 5 }; | |
17 | 23 |
18 void bar (const int &); | 24 void bar (const int &); |
19 | 25 |
20 void | 26 void |
21 S::foo (const int x, const T y) | 27 S::foo (const int x, const T y) |
26 bar (d); | 32 bar (d); |
27 #pragma omp parallel firstprivate (y) | 33 #pragma omp parallel firstprivate (y) |
28 bar (y.i); | 34 bar (y.i); |
29 #pragma omp parallel firstprivate (e) // { dg-error "is predetermined" } | 35 #pragma omp parallel firstprivate (e) // { dg-error "is predetermined" } |
30 bar (e.i); | 36 bar (e.i); |
31 #pragma omp parallel shared (x) // { dg-error "is predetermined" } | 37 #pragma omp parallel firstprivate (f) |
38 bar (f.i); | |
39 #pragma omp parallel shared (x) | |
32 bar (x); | 40 bar (x); |
33 #pragma omp parallel shared (d) // { dg-error "is predetermined" } | 41 #pragma omp parallel shared (d) // { dg-error "is predetermined" } |
34 bar (d); | 42 bar (d); |
35 #pragma omp parallel shared (e) // { dg-error "is predetermined" } | 43 #pragma omp parallel shared (e) // { dg-error "is predetermined" } |
36 bar (e.i); | 44 bar (e.i); |
45 #pragma omp parallel shared (f) // { dg-error "is predetermined" } | |
46 bar (f.i); | |
37 #pragma omp parallel shared (y) | 47 #pragma omp parallel shared (y) |
38 bar (y.i); | 48 bar (y.i); |
39 #pragma omp parallel private (x) // { dg-error "is predetermined" } | 49 #pragma omp parallel private (x) // { dg-error "may appear only in 'shared' or 'firstprivate' clauses" } |
40 bar (x); | 50 bar (x); |
41 #pragma omp parallel private (d) // { dg-error "is predetermined" } | 51 #pragma omp parallel private (d) // { dg-error "is predetermined" } |
42 bar (d); | 52 bar (d); |
43 #pragma omp parallel private (y) | 53 #pragma omp parallel private (y) |
44 bar (y.i); | 54 bar (y.i); |
45 #pragma omp parallel private (e) // { dg-error "is predetermined" } | 55 #pragma omp parallel private (e) // { dg-error "is predetermined" } |
46 bar (e.i); | 56 bar (e.i); |
57 #pragma omp parallel private (f) // { dg-error "is predetermined" } | |
58 bar (f.i); | |
47 } | 59 } |