00001
00002
00003 extern void abort (void);
00004
00005 int
00006 main (void)
00007 {
00008 int e = 0;
00009 #pragma omp parallel num_threads (4) reduction(+:e)
00010 {
00011 long i;
00012 #pragma omp for schedule(dynamic,1)
00013 for (i = __LONG_MAX__ - 30001; i <= __LONG_MAX__ - 10001; i += 10000)
00014 if (i != __LONG_MAX__ - 30001
00015 && i != __LONG_MAX__ - 20001
00016 && i != __LONG_MAX__ - 10001)
00017 e = 1;
00018 #pragma omp for schedule(dynamic,1)
00019 for (i = -__LONG_MAX__ + 30000; i >= -__LONG_MAX__ + 10000; i -= 10000)
00020 if (i != -__LONG_MAX__ + 30000
00021 && i != -__LONG_MAX__ + 20000
00022 && i != -__LONG_MAX__ + 10000)
00023 e = 1;
00024 }
00025 if (e)
00026 abort ();
00027 return 0;
00028 }