diff options
Diffstat (limited to 'gcc/cp/error.c')
-rw-r--r-- | gcc/cp/error.c | 42 |
1 files changed, 5 insertions, 37 deletions
diff --git a/gcc/cp/error.c b/gcc/cp/error.c index b81120af5fa..94e43c05f9c 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -326,6 +326,7 @@ dump_type (tree t, int flags) case BOOLEAN_TYPE: case COMPLEX_TYPE: case VECTOR_TYPE: + case FIXED_POINT_TYPE: pp_type_specifier_seq (cxx_pp, t); break; @@ -1583,43 +1584,6 @@ dump_expr (tree t, int flags) } break; - case NEW_EXPR: - { - tree type = TREE_OPERAND (t, 1); - tree init = TREE_OPERAND (t, 2); - if (NEW_EXPR_USE_GLOBAL (t)) - pp_cxx_colon_colon (cxx_pp); - pp_cxx_identifier (cxx_pp, "new"); - if (TREE_OPERAND (t, 0)) - { - pp_cxx_left_paren (cxx_pp); - dump_expr_list (TREE_OPERAND (t, 0), flags); - pp_cxx_right_paren (cxx_pp); - pp_cxx_whitespace (cxx_pp); - } - if (TREE_CODE (type) == ARRAY_REF) - type = build_cplus_array_type - (TREE_OPERAND (type, 0), - build_index_type (fold_build2 (MINUS_EXPR, integer_type_node, - TREE_OPERAND (type, 1), - integer_one_node))); - dump_type (type, flags); - if (init) - { - pp_cxx_left_paren (cxx_pp); - if (TREE_CODE (init) == TREE_LIST) - dump_expr_list (init, flags); - else if (init == void_zero_node) - /* This representation indicates an empty initializer, - e.g.: "new int()". */ - ; - else - dump_expr (init, flags); - pp_cxx_right_paren (cxx_pp); - } - } - break; - case TARGET_EXPR: /* Note that this only works for G++ target exprs. If somebody builds a general TARGET_EXPR, there's no way to represent that @@ -2075,11 +2039,15 @@ dump_expr (tree t, int flags) case TYPEID_EXPR: case MEMBER_REF: case DOTSTAR_EXPR: + case NEW_EXPR: + case VEC_NEW_EXPR: case DELETE_EXPR: case VEC_DELETE_EXPR: case MODOP_EXPR: case ABS_EXPR: + case CONJ_EXPR: case VECTOR_CST: + case FIXED_CST: pp_expression (cxx_pp, t); break; |