comparison gcc/testsuite/c-c++-common/gomp/atomic-18.c @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
1 int i, v;
2 float f;
3
4 void
5 foo (int j)
6 {
7 #pragma omp atomic update,update /* { dg-error "too many atomic clauses" } */
8 i = i + 1;
9 #pragma omp atomic seq_cst release /* { dg-error "too many memory order clauses" } */
10 i = i + 1;
11 #pragma omp atomic read,release /* { dg-error "incompatible with 'acq_rel' or 'release' clauses" } */
12 v = i;
13 #pragma omp atomic acq_rel read /* { dg-error "incompatible with 'acq_rel' or 'release' clauses" } */
14 v = i;
15 #pragma omp atomic write acq_rel /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
16 i = v;
17 #pragma omp atomic acquire , write /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
18 i = v;
19 #pragma omp atomic update ,acquire /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
20 i = i + 1;
21 #pragma omp atomic acq_rel update /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
22 i = i + 1;
23 #pragma omp atomic acq_rel,hint(0) /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
24 i = i + 1;
25 #pragma omp atomic acquire /* { dg-error "incompatible with 'acq_rel' or 'acquire' clauses" } */
26 i = i + 1;
27 #pragma omp atomic capture hint (0) capture /* { dg-error "too many atomic clauses" } */
28 v = i = i + 1;
29 #pragma omp atomic hint(j + 2) /* { dg-error "constant integer expression" } */
30 i = i + 1;
31 #pragma omp atomic hint(f) /* { dg-error "integ" } */
32 i = i + 1;
33 #pragma omp atomic foobar /* { dg-error "expected 'read', 'write', 'update', 'capture', 'seq_cst', 'acq_rel', 'release', 'relaxed' or 'hint' clause" } */
34 i = i + 1; /* { dg-error "expected end of line before" "" { target *-*-* } .-1 } */
35 }