1// { dg-do compile }
2
3int bar ();
4
5void foo()
6{
7  int i;
8
9  #pragma omp for schedule		// { dg-error "expected" }
10  for (i = 0; i < 10; ++i) ;
11
12  #pragma omp for schedule static	// { dg-error "expected" }
13  for (i = 0; i < 10; ++i) ;
14
15  #pragma omp for schedule (		// { dg-error "invalid schedule kind" }
16  for (i = 0; i < 10; ++i) ;
17
18  #pragma omp for schedule ( static	// { dg-error "expected" }
19  for (i = 0; i < 10; ++i) ;
20
21  #pragma omp for schedule ( static )
22  for (i = 0; i < 10; ++i) ;
23
24  #pragma omp for schedule ( foo )	// { dg-error "invalid schedule kind" }
25  for (i = 0; i < 10; ++i) ;
26
27  #pragma omp for schedule ( static 1	// { dg-error "expected" }
28  for (i = 0; i < 10; ++i) ;
29
30  #pragma omp for schedule ( static 1 ) nowait	// { dg-error "expected" }
31  for (i = 0; i < 10; ++i) ;
32
33  #pragma omp for schedule ( static, 1 ) nowait
34  for (i = 0; i < 10; ++i) ;
35
36  #pragma omp for schedule ( static, 1, 1 ) nowait  // { dg-error "expected" }
37  for (i = 0; i < 10; ++i) ;
38
39  #pragma omp for schedule ( static, 1 + 1 ) nowait
40  for (i = 0; i < 10; ++i) ;
41
42  #pragma omp for schedule ( static, 1.0 )	// { dg-error "integral" }
43  for (i = 0; i < 10; ++i) ;
44
45  #pragma omp for schedule (dynamic)
46  for (i = 0; i < 10; ++i) ;
47
48  #pragma omp for schedule (dynamic, bar ())
49  for (i = 0; i < 10; ++i) ;
50
51  #pragma omp for schedule (guided)
52  for (i = 0; i < 10; ++i) ;
53
54  #pragma omp for schedule (guided, bar ())
55  for (i = 0; i < 10; ++i) ;
56
57  #pragma omp for schedule (runtime)
58  for (i = 0; i < 10; ++i) ;
59
60  #pragma omp for schedule (runtime, bar ())	// { dg-error "does not take" }
61  for (i = 0; i < 10; ++i) ;
62}
63