1// PR c++/37533
2// { dg-do compile }
3// { dg-options "-fopenmp" }
4
5template<int>
6void
7f1 ()
8{
9#pragma omp parallel for
10  for (int i = ""; i < 4; ++i)	// { dg-error "invalid conversion from" }
11    ;
12}
13
14template<int>
15void
16f2 ()
17{
18  int i;
19#pragma omp parallel for
20  for (i = ""; i < 4; ++i)	// { dg-error "invalid conversion from" }
21    ;
22}
23
24template<typename T>
25void
26f3 ()
27{
28#pragma omp parallel for
29  for (T i = ""; i < 4; ++i)	// { dg-error "invalid conversion from" }
30    ;
31}
32
33template<typename T>
34void
35f4 ()
36{
37  T i;
38#pragma omp parallel for
39  for (i = ""; i < 4; ++i)	// { dg-error "invalid conversion from" }
40    ;
41}
42
43void
44bar ()
45{
46  f1<0> ();			// { dg-message "instantiated from here" }
47  f2<1> ();			// { dg-message "instantiated from here" }
48  f3<int> ();			// { dg-message "instantiated from here" }
49  f4<int> ();			// { dg-message "instantiated from here" }
50}
51