aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/Wstrict-overflow-18.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.dg/Wstrict-overflow-18.c')
-rw-r--r--gcc/testsuite/gcc.dg/Wstrict-overflow-18.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/testsuite/gcc.dg/Wstrict-overflow-18.c b/gcc/testsuite/gcc.dg/Wstrict-overflow-18.c
index 7bf111a50ea..bab91ce3889 100644
--- a/gcc/testsuite/gcc.dg/Wstrict-overflow-18.c
+++ b/gcc/testsuite/gcc.dg/Wstrict-overflow-18.c
@@ -1,11 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-fstrict-overflow -O2 -Wstrict-overflow" } */
-/* Don't warn about an overflow when folding i > 0. The loop analysis
- should determine that i does not wrap.
-
- The test is really bogus, p->a - p->b can be larger than INT_MAX
- and thus i can very well wrap. */
+/* Warn about an overflow when folding i > 0, p->a - p->b can be larger
+ than INT_MAX and thus i can wrap. */
struct c { unsigned int a; unsigned int b; };
extern void bar (struct c *);
@@ -17,7 +14,7 @@ foo (struct c *p)
for (i = 0; i < p->a - p->b; ++i)
{
- if (i > 0) /* { dg-bogus "warning" "" } */
+ if (i > 0) /* { dg-warning "signed overflow" "" } */
sum += 2;
bar (p);
}