1 // PR middle-end/86539 2 3 int a[384]; 4 5 __attribute__((noipa)) void foo(int & b,int & c)6foo (int &b, int &c) 7 { 8 #pragma omp taskloop shared (a) collapse(3) 9 for (int i = 0; i < 1; i++) 10 for (int *p = &b; p < &c; p++) 11 for (int j = 0; j < 1; j++) 12 if (p < &a[128] || p >= &a[256]) 13 __builtin_abort (); 14 else 15 p[0]++; 16 } 17 18 int main()19main () 20 { 21 #pragma omp parallel 22 #pragma omp single 23 foo (a[128], a[256]); 24 for (int i = 0; i < 384; i++) 25 if (a[i] != (i >= 128 && i < 256)) 26 __builtin_abort (); 27 return 0; 28 } 29