// PR c++/37533 // { dg-do compile } // { dg-options "-fopenmp" } template void f1 () { #pragma omp parallel for for (int i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } ; } template void f2 () { int i; #pragma omp parallel for for (i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } ; } template void f3 () { #pragma omp parallel for for (T i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } ; } template void f4 () { T i; #pragma omp parallel for for (i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } ; } void bar () { f1<0> (); // { dg-message "required from here" } f2<1> (); // { dg-message "required from here" } f3 (); // { dg-message "required from here" } f4 (); // { dg-message "required from here" } }