2010-06-04 Jason Merrill <jason@redhat.com>
+ * 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.
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));
case SIZEOF_EXPR:
case ALIGNOF_EXPR:
+ case NOEXCEPT_EXPR:
pp_cxx_unary_expression (pp, t);
break;