aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-01-09 17:51:55 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2009-01-09 17:51:55 +0100
commitaee5c3ed8c2421a8a65c2728afcfdf58ded4330b (patch)
tree289d839e65545c31457b32a1e20650cb8f13b042
parent260fda3d0a0723520eea61bae0f5b4467d33f49d (diff)
downloadgcc-aee5c3ed8c2421a8a65c2728afcfdf58ded4330b.zip
gcc-aee5c3ed8c2421a8a65c2728afcfdf58ded4330b.tar.gz
gcc-aee5c3ed8c2421a8a65c2728afcfdf58ded4330b.tar.bz2
re PR c++/35335 (Broken diagnostic: 'expr_stmt' not supported by dump_expr)
PR c++/35335 * error.c (dump_expr): Handle EXPR_STMT like BIND_EXPR. * g++.dg/other/error31.C: New testcase. From-SVN: r143210
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/error.c3
-rw-r--r--gcc/testsuite/ChangeLog3
-rw-r--r--gcc/testsuite/g++.dg/other/error31.C13
4 files changed, 23 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 6d09faf..aad07d2 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2009-01-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/35335
+ * error.c (dump_expr): Handle EXPR_STMT like BIND_EXPR.
+
2009-01-09 John F. Carr <jfc@mit.edu>
PR c++/37877
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index 4a63f1d..16c9628 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -1,7 +1,7 @@
/* Call-backs for C++ error reporting.
This code is non-reentrant.
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002,
- 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
@@ -1977,6 +1977,7 @@ dump_expr (tree t, int flags)
case BIND_EXPR:
case STMT_EXPR:
+ case EXPR_STMT:
case STATEMENT_LIST:
/* We don't yet have a way of dumping statements in a
human-readable format. */
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index b597616..f142e96 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,8 @@
2009-01-09 Jakub Jelinek <jakub@redhat.com>
+ PR c++/35335
+ * g++.dg/other/error31.C: New testcase.
+
PR c/35742
* gcc.dg/pr35742.c: New test.
diff --git a/gcc/testsuite/g++.dg/other/error31.C b/gcc/testsuite/g++.dg/other/error31.C
new file mode 100644
index 0000000..c9e8351
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/error31.C
@@ -0,0 +1,13 @@
+// PR c++/35335
+// { dg-do compile }
+// { dg-options "" }
+// { dg-bogus "not supported by" "" { target *-*-* } 0 }
+
+struct A {}; // { dg-message "note: candidates are" }
+
+void
+foo ()
+{
+ A a;
+ a = ({ { 1; } }); // { dg-error "no match for" }
+}