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