1extern void abort (void); 2 3int buf[256]; 4 5void __attribute__((noinline)) 6foo (void) 7{ 8 int i; 9 #pragma omp for schedule (auto) 10 for (i = 0; i < 256; i++) 11 buf[i] += i; 12} 13 14int 15main (void) 16{ 17 int i; 18 #pragma omp parallel for schedule (auto) 19 for (i = 0; i < 256; i++) 20 buf[i] = i; 21 #pragma omp parallel num_threads (4) 22 foo (); 23 for (i = 0; i < 256; i++) 24 if (buf[i] != 2 * i) 25 abort (); 26 return 0; 27} 28