]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/c-c++-common/gomp/depend-6.c
* builtin-types.def (BT_FN_VOID_BOOL, BT_FN_VOID_SIZE_SIZE_PTR,
[thirdparty/gcc.git] / gcc / testsuite / c-c++-common / gomp / depend-6.c
1 /* { dg-do compile } */
2 /* { dg-options "-fopenmp" } */
3
4 struct T { int c[3]; };
5 struct S { int a; struct T *b; struct T g; };
6 struct U { int a : 5; };
7 struct S d[10];
8 struct S *e[10];
9 struct S *f;
10 struct S h;
11 struct U i;
12
13 void
14 foo (void)
15 {
16 #pragma omp task depend(in: d[:2].b->c[2]) /* { dg-error "expected" } */
17 ;
18 #pragma omp task depend(inout: d[1:].b->c[2]) /* { dg-error "expected" } */
19 ;
20 #pragma omp task depend(out: d[0:1].a) /* { dg-error "expected" } */
21 ;
22 #pragma omp task depend(in: e[3:2]->a) /* { dg-error "expected" } */
23 ;
24 #pragma omp task depend(inout: e[2:2]->b->c) /* { dg-error "expected" } */
25 ;
26 #pragma omp task depend(in: e[1]->b->c[2:1]) /* { dg-error "expected" } */
27 ;
28 #pragma omp task depend(out: f + 0) /* { dg-error "not lvalue expression" } */
29 ;
30 #pragma omp task depend(inout: f[0:1].a) /* { dg-error "expected" } */
31 ;
32 #pragma omp task depend(inout: h.g.c[2:1]) /* { dg-error "expected" } */
33 ;
34 #pragma omp task depend(in: i.a) /* { dg-error "bit-field '\[^\n\r]*' in 'depend' clause" } */
35 ;
36 }