summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormanu <manu@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-02 20:07:44 +0000
committermanu <manu@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-02 20:07:44 +0000
commitd6f5f982f614172cc4d23c8372a4eb4b8266d18b (patch)
tree7487dbc52405b1388776e71eaa3736b0fc7f6c34
parent24153880bd9e4f7f7cf825cebc8b476c32717ba0 (diff)
downloadppe42-gcc-d6f5f982f614172cc4d23c8372a4eb4b8266d18b.tar.gz
ppe42-gcc-d6f5f982f614172cc4d23c8372a4eb4b8266d18b.zip
2007-01-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c/19977 * c-typeck.c (store_init_value): Don't emit pedantic overflow warning for non-static initializers. testsuite/ * gcc/testsuite/gcc.dg/overflow-warn-3.c: Remove XFAIL. * gcc/testsuite/gcc.dg/overflow-warn-4.c: Remove XFAIL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120355 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/c-typeck.c2
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gcc.dg/overflow-warn-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/overflow-warn-4.c2
5 files changed, 15 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e7e62e9caf3..a6a1232ecb7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-01-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR c/19977
+ * c-typeck.c (store_init_value): Don't emit pedantic overflow
+ warning for non-static initializers.
+
2007-01-02 Steven Bosscher <steven@gcc.gnu.org>
* config/alpha/alpha.md, arm/arm.c, darwin.c, frv/frv.md,
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c
index 08f7d4a3a79..955bfd959f8 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c-typeck.c
@@ -4292,7 +4292,7 @@ store_init_value (tree decl, tree init)
/* ANSI wants warnings about out-of-range constant initializers. */
STRIP_TYPE_NOPS (value);
- constant_expression_warning (value);
+ if (TREE_STATIC (decl)) constant_expression_warning (value);
/* Check if we need to set array size from compound literal size. */
if (TREE_CODE (type) == ARRAY_TYPE
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 5f17a946fe6..9b38348651d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2007-01-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR c/19977
+ * gcc/testsuite/gcc.dg/overflow-warn-3.c: Remove XFAIL.
+ * gcc/testsuite/gcc.dg/overflow-warn-4.c: Remove XFAIL.
+
2006-01-02 Ian Lance Taylor <iant@google.com>
* g++.dg/warn/Wparentheses-22.C: New test.
diff --git a/gcc/testsuite/gcc.dg/overflow-warn-3.c b/gcc/testsuite/gcc.dg/overflow-warn-3.c
index f20940efdcd..2aa8b7f7eb6 100644
--- a/gcc/testsuite/gcc.dg/overflow-warn-3.c
+++ b/gcc/testsuite/gcc.dg/overflow-warn-3.c
@@ -40,7 +40,7 @@ f (void)
/* This expression is not required to be a constant expression, so
it should just involve undefined behavior at runtime. */
int c = INT_MAX + 1; /* { dg-warning "warning: integer overflow in expression" } */
- /* { dg-bogus "warning: overflow in constant expression" "constant" { xfail *-*-* } 42 } */
+
}
/* But this expression does need to be constant. */
diff --git a/gcc/testsuite/gcc.dg/overflow-warn-4.c b/gcc/testsuite/gcc.dg/overflow-warn-4.c
index acf2c876bf2..a36f66f14fe 100644
--- a/gcc/testsuite/gcc.dg/overflow-warn-4.c
+++ b/gcc/testsuite/gcc.dg/overflow-warn-4.c
@@ -40,7 +40,7 @@ f (void)
/* This expression is not required to be a constant expression, so
it should just involve undefined behavior at runtime. */
int c = INT_MAX + 1; /* { dg-warning "warning: integer overflow in expression" } */
- /* { dg-bogus "error: overflow in constant expression" "constant" { xfail *-*-* } 42 } */
+
}
/* But this expression does need to be constant. */
OpenPOWER on IntegriCloud