testsuite: Adjust g++.dg/gomp/pr58567.C to new compiler message
Checks
Commit Message
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(-)
Comments
On Fri, Jul 21, 2023 at 5:29 PM Thiago Jung Bauermann
<thiago.bauermann@linaro.org> wrote:
>
> 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.
Thanks! I can't approve this patch but it looks good to me.
>
> 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'" } */
> ;
> }
>
>
Hello,
Thiago Jung Bauermann <thiago.bauermann@linaro.org> writes:
> 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'" } */
> ;
> }
>
Ping? I just tested trunk. It still fails this test, and this patch
still fixes the failures.
Hello Thiago,
the patch looks good to me. Thanks! Can you commit the patch yourself or
do you need someone to do this for you?
On 15.08.23 18:17, Thiago Jung Bauermann via Gcc-patches wrote:
> Thiago Jung Bauermann <thiago.bauermann@linaro.org> writes:
>
>> 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'" } */
>> ;
>> }
>>
> Ping? I just tested trunk. It still fails this test, and this patch
> still fixes the failures.
Tobias
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
Hello Tobias,
Tobias Burnus <tobias@codesourcery.com> writes:
> Hello Thiago,
>
> the patch looks good to me. Thanks! Can you commit the patch yourself or
> do you need someone to do this for you?
Thank you! I don't have commit access, so I would need someone to do
this for me.
> On 15.08.23 18:17, Thiago Jung Bauermann via Gcc-patches wrote:
>> Thiago Jung Bauermann <thiago.bauermann@linaro.org> writes:
>>
>>> 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'" } */
>>> ;
>>> }
>>>
>> Ping? I just tested trunk. It still fails this test, and this patch
>> still fixes the failures.
> Tobias
> -----------------
> Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München;
> Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf;
> Sitz der Gesellschaft: München; Registergericht München, HRB 106955
Hello Thiago,
On 18.08.23 23:24, Thiago Jung Bauermann wrote:
> Tobias Burnus <tobias@codesourcery.com> writes:
>> the patch looks good to me. Thanks! Can you commit the patch yourself or
>> do you need someone to do this for you?
> Thank you! I don't have commit access, so I would need someone to do
> this for me.
Done now in commit r14-3344-g40a6803c6d8ca2.
Thanks,
Tobias
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
Hello Tobias,
Tobias Burnus <tobias@codesourcery.com> writes:
> On 18.08.23 23:24, Thiago Jung Bauermann wrote:
>> Tobias Burnus <tobias@codesourcery.com> writes:
>>> the patch looks good to me. Thanks! Can you commit the patch yourself or
>>> do you need someone to do this for you?
>> Thank you! I don't have commit access, so I would need someone to do
>> this for me.
>
> Done now in commit r14-3344-g40a6803c6d8ca2.
Thank you!
@@ -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'" } */
;
}