re PR c++/33492 (Broken diagnostic: 'must_not_throw_expr' not supported by dump_expr)

/cp
2009-03-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/33492
	* error.c (dump_expr): Don't try to print THROW_EXPRs in full.

/testsuite
2009-03-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/33492
	* g++.dg/other/error32.C: New.

From-SVN: r144686
This commit is contained in:
Paolo Carlini 2009-03-06 23:52:02 +00:00 committed by Paolo Carlini
parent 65401a0ba3
commit d8b4270d0c
4 changed files with 21 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2009-03-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/33492
* error.c (dump_expr): Don't try to print THROW_EXPRs in full.
2009-03-06 Alexandre Oliva <aoliva@redhat.com>
* decl.c (record_builtin_java_type): Use canonicalized integer

View File

@ -1508,8 +1508,9 @@ dump_expr (tree t, int flags)
break;
case THROW_EXPR:
pp_cxx_identifier (cxx_pp, "throw");
dump_expr (TREE_OPERAND (t, 0), flags);
/* While waiting for caret diagnostics, avoid printing
__cxa_allocate_exception, __cxa_throw, and the like. */
pp_cxx_identifier (cxx_pp, "<throw-expression>");
break;
case PTRMEM_CST:

View File

@ -1,3 +1,8 @@
2009-03-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/33492
* g++.dg/other/error32.C: New.
2009-03-06 Jakub Jelinek <jakub@redhat.com>
PR middle-end/39360

View File

@ -0,0 +1,8 @@
// PR c++/33492
// { dg-options "" }
void foo()
{
if (throw 0) // { dg-error "could not convert .\\<throw-expression\\>. to .bool." }
;
}