C99 testsuite readiness: Compile more tests with -std=gnu89
[official-gcc.git] / gcc / testsuite / g++.dg / gomp / attrs-imperfect1.C
blobcf293b5081cf460a7c7c81f8fb384d07909dc14b
1 /* { dg-do compile { target c++11 } } */
3 /* This test case is expected to fail due to errors.  */
5 int f1 (int depth, int iter);
6 int f2 (int depth, int iter);
8 void s1 (int a1, int a2, int a3)
10   int i, j, k;
12   [[ omp :: directive (for, collapse(3)) ]]
13   for (i = 0; i < a1; i++)
14     {
15       f1 (0, i);
16       for (j = 0; j < a2; j++)
17         {
18           [[ omp :: directive (barrier) ]] ;    /* { dg-error "intervening code must not contain OpenMP directives" } */
19           f1 (1, j);
20           if (i == 2)
21             continue;   /* { dg-error "invalid exit" } */
22           else
23             break;      /* { dg-error "invalid exit" } */
24           for (k = 0; k < a3; k++)
25             {
26               f1 (2, k);
27               f2 (2, k);
28             }
29           f2 (1, j);
30         }
31       for (k = 0; k < a3; k++)  /* { dg-error "loop not permitted in intervening code " } */
32         {
33           f1 (2, k);
34           f2 (2, k);
35         }
36       f2 (0, i);
37     }