Commit 92d1425ca780 "c++: redundant targ coercion for var/alias tmpls"
changed the compiler error message in this testcase from
<source>: In instantiation of 'void foo() [with T = int]':
<source>:14:11: required from here
<source>:8:22: error: 'int' is not a class, struct, or union type
<source>:8:22: error: 'int' is not a class, struct, or union type
<source>:8:22: error: 'int' is not a class, struct, or union type
<source>:8:3: error: expected iteration declaration or initialization
compiler exited with status 1
to:
<source>: In instantiation of 'void foo() [with T = int]':
<source>:14:11: required from here
<source>:8:22: error: 'int' is not a class, struct, or union type
<source>:8:3: error: invalid type for iteration variable 'i'
compiler exited with status 1
Excess errors:
<source>:8:3: error: invalid type for iteration variable 'i'
Andrew Pinski analysed the issue in PR 110756 and considered that it was a
testsuite issue in that the error message changed slightly. Also, it's a
better error message.
Therefore, we only need to adjust the testcase to expect the new message.
gcc/testsuite/ChangeLog:
PR testsuite/110756
g++.dg/gomp/pr58567.C: Adjust to new compiler error message.
---
gcc/testsuite/g++.dg/gomp/pr58567.C | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/testsuite/g++.dg/gomp/pr58567.C
b/gcc/testsuite/g++.dg/gomp/pr58567.C
index 35a5bb027ffe..866d831c65e4 100644
--- a/gcc/testsuite/g++.dg/gomp/pr58567.C
+++ b/gcc/testsuite/g++.dg/gomp/pr58567.C
@@ -5,7 +5,7 @@
template<typename T> void foo()
{
#pragma omp parallel for
- for (typename T::X i = 0; i < 100; ++i) /* { dg-error "'int' is not a
class, struct, or union type|expected iteration declaration or initialization"
} */
+ for (typename T::X i = 0; i < 100; ++i) /* { dg-error "'int' is not a
class, struct, or union type|invalid type for iteration variable 'i'" } */
;
}