summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-07-20 16:38:46 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2009-07-20 16:38:46 +0200
commite338758dd12b17eb04531917bca8790504ae2078 (patch)
tree48dd586c7dbcf7bf44eb891c63aeac4fa50c2384
parent5a1ccfb14206fd9718b6f4990c6fd9fab9eccb98 (diff)
downloadgcc-e338758dd12b17eb04531917bca8790504ae2078.tar.gz
re PR tree-optimization/40792 (internal error in com_mpi.c at -O3 for gcc 4.4.0)
PR tree-optimization/40792 * tree.c (build_function_type_skip_args): Remove bogus assert. * gcc.dg/pr40792.c: New test. From-SVN: r149822
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/pr40792.c21
-rw-r--r--gcc/tree.c1
4 files changed, 31 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 82a3ab0e83b..c24dbe3c421 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/40792
+ * tree.c (build_function_type_skip_args): Remove bogus assert.
+
2009-07-20 Jan Hubicka <jh@suse.cz>
Martin Jambor <mjambor@suse.cz>
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index daac3e82e4e..2e778c60c0c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/40792
+ * gcc.dg/pr40792.c: New test.
+
2009-07-20 Ira Rosen <irar@il.ibm.com>
* gcc.dg/vect/vect-cond-1.c, gcc.dg/vect/vect-cond-2.c,
diff --git a/gcc/testsuite/gcc.dg/pr40792.c b/gcc/testsuite/gcc.dg/pr40792.c
new file mode 100644
index 00000000000..41f080e542e
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr40792.c
@@ -0,0 +1,21 @@
+/* PR tree-optimization/40792 */
+/* { dg-do compile } */
+/* { dg-options "-O3" } */
+
+void foo (int, char *, int *);
+
+void
+bar (int *a, int *b, ...)
+{
+ int c;
+ char d[256];
+ foo (*b, d, &c);
+}
+
+static int a, b;
+
+void
+baz (int c)
+{
+ bar (&a, &b);
+}
diff --git a/gcc/tree.c b/gcc/tree.c
index b32e209e83e..44178aff65c 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -6299,7 +6299,6 @@ build_function_type_skip_args (tree orig_type, bitmap args_to_skip)
else
new_reversed = void_list_node;
}
- gcc_assert (new_reversed);
/* Use copy_node to preserve as much as possible from original type
(debug info, attribute lists etc.)