c++: prvalue of array type [PR111286]
[official-gcc.git] / gcc / testsuite / c-c++-common / gomp / pr59152.c
blobbcccb1be349282241b342d6f64b640a398f02c8e
1 /* PR middle-end/59152 */
2 /* { dg-do compile } */
3 /* { dg-options "-fopenmp -fipa-pure-const" } */
5 extern int b[];
6 void
7 foo (void)
9 unsigned long v1, v2, v3;
10 #pragma omp parallel for schedule(static, 32) collapse(3)
11 for (v1 = 0; v1 < 20; v1 += 2)
12 for (v2 = __LONG_MAX__; v2 > __LONG_MAX__ - 30; v2 -= 3)
13 for (v3 = 10; v3 > 0; v3--)
14 #pragma omp atomic
15 b[v3]++;
18 void
19 bar (void)
21 unsigned long v1, v2, v3;
22 #pragma omp parallel for schedule(static) collapse(3)
23 for (v1 = 0; v1 < 20; v1 += 2)
24 for (v2 = __LONG_MAX__; v2 > __LONG_MAX__ - 30; v2 -= 3)
25 for (v3 = 10; v3 > 0; v3--)
26 #pragma omp atomic
27 b[v3]++;
30 void
31 baz (void)
33 unsigned long v1, v2, v3;
34 #pragma omp parallel for schedule(runtime) collapse(3)
35 for (v1 = 0; v1 < 20; v1 += 2)
36 for (v2 = __LONG_MAX__; v2 > __LONG_MAX__ - 30; v2 -= 3)
37 for (v3 = 10; v3 > 0; v3--)
38 #pragma omp atomic
39 b[v3]++;