testsuite: Fix pr55569.c excess errors
Checks
Commit Message
This fixes the following:
Excess errors:
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:12: warning: overflow
in conversion from 'long long unsigned int' to 'long int' changes value
from '4611686018427387903' to '-1' [-Woverflow]
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:34: warning: iteration
2147483647 invokes undefined behavior [-Waggressive-loop-optimizations]
Patch OK?
Comments
On Tue, Dec 20, 2022 at 1:22 AM Jonathan Yong via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> This fixes the following:
It is not obvious from the email, why this patch is needed but I
figured it was due to LLP64 targets or some other targets where long
is not the same size of the size_t type.
I think this patch is good but I cannot approve it. The commit message
should be improved to make a mention of LLP64 targets and long being a
smaller size than size_t.
Thanks,
Andrew
>
> Excess errors:
>
> gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:12: warning: overflow
> in conversion from 'long long unsigned int' to 'long int' changes value
> from '4611686018427387903' to '-1' [-Woverflow]
>
> gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:34: warning: iteration
> 2147483647 invokes undefined behavior [-Waggressive-loop-optimizations]
>
> Patch OK?
On Dec 20, 2022, at 1:22 AM, Jonathan Yong via Gcc-patches <gcc-patches@gcc.gnu.org> wrote:
>
> This fixes the following:
>
> Excess errors:
>
> gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:12: warning: overflow in conversion from 'long long unsigned int' to 'long int' changes value from '4611686018427387903' to '-1' [-Woverflow]
>
> gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:34: warning: iteration 2147483647 invokes undefined behavior [-Waggressive-loop-optimizations]
>
> Patch OK?
Ok.
On 12/20/22 16:55, Andrew Pinski wrote:
> On Tue, Dec 20, 2022 at 1:22 AM Jonathan Yong via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
>>
>> This fixes the following:
>
> It is not obvious from the email, why this patch is needed but I
> figured it was due to LLP64 targets or some other targets where long
> is not the same size of the size_t type.
> I think this patch is good but I cannot approve it. The commit message
> should be improved to make a mention of LLP64 targets and long being a
> smaller size than size_t.
>
> Thanks,
> Andrew
>
You are right that this is for LLP64 win32. I will change the subject to
"testsuite: Fix pr55569.c excess errors on LLP64"
This fixes the following on LLP64 mingw-w64 target:
Excess errors:
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:12: warning: overflow
in conversion from 'long long unsigned int' to 'long int' changes value
from '4611686018427387903' to '-1' [-Woverflow]
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:34: warning: iteration
2147483647 invokes undefined behavior [-Waggressive-loop-optimizations]
From 11cc6c38c4b44849110240da3ed553fcc3b35d05 Mon Sep 17 00:00:00 2001
From: Jonathan Yong <10walls@gmail.com>
Date: Tue, 20 Dec 2022 09:16:16 +0000
Subject: [PATCH] testsuite: Fix pr55569.c excess errors
This fixes the following:
Excess errors:
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:12: warning: overflow in conversion from 'long long unsigned int' to 'long int' changes value from '4611686018427387903' to '-1' [-Woverflow]
gcc/testsuite/gcc.c-torture/compile/pr55569.c:13:34: warning: iteration 2147483647 invokes undefined behavior [-Waggressive-loop-optimizations]
gcc/testsuite/ChangeLog:
* gcc.c-torture/compile/pr55569.c: fix excess errors.
Signed-off-by: Jonathan Yong <10walls@gmail.com>
---
gcc/testsuite/gcc.c-torture/compile/pr55569.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -4,7 +4,7 @@ int *bar (void);
void
foo (void)
{
- long x;
+ __INTPTR_TYPE__ x;
int *y = bar ();
/* The loop below may be optimized to a call to memset with a size
--
2.39.0