diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/gomp/pr37533.C')
-rw-r--r-- | gcc/testsuite/g++.dg/gomp/pr37533.C | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/gomp/pr37533.C b/gcc/testsuite/g++.dg/gomp/pr37533.C new file mode 100644 index 000000000..7bf61945b --- /dev/null +++ b/gcc/testsuite/g++.dg/gomp/pr37533.C @@ -0,0 +1,50 @@ +// PR c++/37533 +// { dg-do compile } +// { dg-options "-fopenmp" } + +template<int> +void +f1 () +{ +#pragma omp parallel for + for (int i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } + ; +} + +template<int> +void +f2 () +{ + int i; +#pragma omp parallel for + for (i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } + ; +} + +template<typename T> +void +f3 () +{ +#pragma omp parallel for + for (T i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } + ; +} + +template<typename T> +void +f4 () +{ + T i; +#pragma omp parallel for + for (i = ""; i < 4; ++i) // { dg-error "invalid conversion from" } + ; +} + +void +bar () +{ + f1<0> (); // { dg-message "instantiated from here" } + f2<1> (); // { dg-message "instantiated from here" } + f3<int> (); // { dg-message "instantiated from here" } + f4<int> (); // { dg-message "instantiated from here" } +} |