From: jason Date: Fri, 4 Jun 2010 21:42:41 +0000 (+0000) Subject: * cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=071441458fd417fa5f8f3768cf8c690e01498649;p=thirdparty%2Fgcc.git * cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR. (pp_cxx_expression): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160299 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 958481083864..fec4bfdde7cc 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,10 +1,14 @@ 2010-06-04 Jason Merrill + * cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR. + (pp_cxx_expression): Likewise. + Implement noexcept-specification (15.4) * parser.c (cp_parser_exception_specification_opt): Parse it. Give -Wdeprecated warning about throw() specs. * pt.c (tsubst_exception_specification): Handle it. * error.c (dump_exception_spec): Handle it. + (dump_expr): Handle NOEXCEPT_EXPR. * cxx-pretty-print.c (pp_cxx_exception_specification): Likewise. * typeck.c (comp_except_specs): Handle compatibility rules. Change exact parm to take an enum. diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c index e6c68ba5ddb5..6f4ab6b08119 100644 --- a/gcc/cp/cxx-pretty-print.c +++ b/gcc/cp/cxx-pretty-print.c @@ -791,6 +791,14 @@ pp_cxx_unary_expression (cxx_pretty_printer *pp, tree t) pp_unary_expression (pp, TREE_OPERAND (t, 0)); break; + case NOEXCEPT_EXPR: + pp_cxx_ws_string (pp, "noexcept"); + pp_cxx_whitespace (pp); + pp_cxx_left_paren (pp); + pp_cxx_expression (pp, TREE_OPERAND (t, 0)); + pp_cxx_right_paren (pp); + break; + case UNARY_PLUS_EXPR: pp_plus (pp); pp_cxx_cast_expression (pp, TREE_OPERAND (t, 0)); @@ -1061,6 +1069,7 @@ pp_cxx_expression (cxx_pretty_printer *pp, tree t) case SIZEOF_EXPR: case ALIGNOF_EXPR: + case NOEXCEPT_EXPR: pp_cxx_unary_expression (pp, t); break;