===================================================================
@@ -305,7 +305,10 @@
}
}
-/* type-specifier:
+/* simple-type-specifier:
+ type-specifier
+
+ type-specifier:
void
char
short
@@ -328,17 +331,17 @@
__vector__ */
void
-pp_c_type_specifier (c_pretty_printer *pp, tree t)
+c_pretty_printer::simple_type_specifier (tree t)
{
const enum tree_code code = TREE_CODE (t);
switch (code)
{
case ERROR_MARK:
- pp->translate_string ("<type-error>");
+ translate_string ("<type-error>");
break;
case IDENTIFIER_NODE:
- pp_c_identifier (pp, IDENTIFIER_POINTER (t));
+ pp_c_identifier (this, IDENTIFIER_POINTER (t));
break;
case VOID_TYPE:
@@ -349,7 +352,7 @@
if (TYPE_NAME (t))
{
t = TYPE_NAME (t);
- pp_c_type_specifier (pp, t);
+ simple_type_specifier (t);
}
else
{
@@ -360,11 +363,11 @@
t = c_common_type_for_mode (TYPE_MODE (t), TYPE_UNSIGNED (t));
if (TYPE_NAME (t))
{
- pp_c_type_specifier (pp, t);
+ simple_type_specifier (t);
if (TYPE_PRECISION (t) != prec)
{
- pp_colon (pp);
- pp_decimal_int (pp, prec);
+ pp_colon (this);
+ pp_decimal_int (this, prec);
}
}
else
@@ -372,52 +375,52 @@
switch (code)
{
case INTEGER_TYPE:
- pp->translate_string (TYPE_UNSIGNED (t)
- ? "<unnamed-unsigned:"
- : "<unnamed-signed:");
+ translate_string (TYPE_UNSIGNED (t)
+ ? "<unnamed-unsigned:"
+ : "<unnamed-signed:");
break;
case REAL_TYPE:
- pp->translate_string ("<unnamed-float:");
+ translate_string ("<unnamed-float:");
break;
case FIXED_POINT_TYPE:
- pp->translate_string ("<unnamed-fixed:");
+ translate_string ("<unnamed-fixed:");
break;
default:
gcc_unreachable ();
}
- pp_decimal_int (pp, prec);
- pp_greater (pp);
+ pp_decimal_int (this, prec);
+ pp_greater (this);
}
}
break;
case TYPE_DECL:
if (DECL_NAME (t))
- pp->id_expression (t);
+ id_expression (t);
else
- pp->translate_string ("<typedef-error>");
+ translate_string ("<typedef-error>");
break;
case UNION_TYPE:
case RECORD_TYPE:
case ENUMERAL_TYPE:
if (code == UNION_TYPE)
- pp_c_ws_string (pp, "union");
+ pp_c_ws_string (this, "union");
else if (code == RECORD_TYPE)
- pp_c_ws_string (pp, "struct");
+ pp_c_ws_string (this, "struct");
else if (code == ENUMERAL_TYPE)
- pp_c_ws_string (pp, "enum");
+ pp_c_ws_string (this, "enum");
else
- pp->translate_string ("<tag-error>");
+ translate_string ("<tag-error>");
if (TYPE_NAME (t))
- pp->id_expression (TYPE_NAME (t));
+ id_expression (TYPE_NAME (t));
else
- pp->translate_string ("<anonymous>");
+ translate_string ("<anonymous>");
break;
default:
- pp_unsupported_tree (pp, t);
+ pp_unsupported_tree (this, t);
break;
}
}
@@ -483,7 +486,7 @@
break;
default:
- pp_simple_type_specifier (pp, t);
+ pp->simple_type_specifier (t);
break;
}
if ((pp->flags & pp_c_flag_gnu_v3) && code != POINTER_TYPE)
@@ -2328,7 +2331,6 @@
type_specifier_seq = pp_c_specifier_qualifier_list;
ptr_operator = pp_c_pointer;
parameter_list = pp_c_parameter_type_list;
- simple_type_specifier = pp_c_type_specifier;
}
===================================================================
@@ -69,6 +69,7 @@
virtual void declaration (tree);
virtual void declaration_specifiers (tree);
+ virtual void simple_type_specifier (tree);
virtual void function_specifier (tree);
virtual void storage_class_specifier (tree);
virtual void declarator (tree);
@@ -88,7 +89,6 @@
c_pretty_print_fn type_specifier_seq;
c_pretty_print_fn ptr_operator;
c_pretty_print_fn parameter_list;
- c_pretty_print_fn simple_type_specifier;
};
#define pp_c_tree_identifier(PPI, ID) \
@@ -97,7 +97,6 @@
#define pp_type_specifier_seq(PP, D) (PP)->type_specifier_seq (PP, D)
#define pp_ptr_operator(PP, D) (PP)->ptr_operator (PP, D)
#define pp_parameter_list(PP, T) (PP)->parameter_list (PP, T)
-#define pp_simple_type_specifier(PP, T) (PP)->simple_type_specifier (PP, T)
void pp_c_whitespace (c_pretty_printer *);
void pp_c_left_paren (c_pretty_printer *);
@@ -124,7 +123,6 @@
void pp_c_type_qualifier_list (c_pretty_printer *, tree);
void pp_c_parameter_type_list (c_pretty_printer *, tree);
void pp_c_specifier_qualifier_list (c_pretty_printer *, tree);
-void pp_c_type_specifier (c_pretty_printer *, tree);
/* Expressions. */
void pp_c_logical_or_expression (c_pretty_printer *, tree);
void pp_c_expression_list (c_pretty_printer *, tree);
===================================================================
@@ -1249,32 +1249,32 @@
double
void */
-static void
-pp_cxx_simple_type_specifier (cxx_pretty_printer *pp, tree t)
+void
+cxx_pretty_printer::simple_type_specifier (tree t)
{
switch (TREE_CODE (t))
{
case RECORD_TYPE:
case UNION_TYPE:
case ENUMERAL_TYPE:
- pp_cxx_qualified_id (pp, t);
+ pp_cxx_qualified_id (this, t);
break;
case TEMPLATE_TYPE_PARM:
case TEMPLATE_TEMPLATE_PARM:
case TEMPLATE_PARM_INDEX:
case BOUND_TEMPLATE_TEMPLATE_PARM:
- pp_cxx_unqualified_id (pp, t);
+ pp_cxx_unqualified_id (this, t);
break;
case TYPENAME_TYPE:
- pp_cxx_ws_string (pp, "typename");
- pp_cxx_nested_name_specifier (pp, TYPE_CONTEXT (t));
- pp_cxx_unqualified_id (pp, TYPE_NAME (t));
+ pp_cxx_ws_string (this, "typename");
+ pp_cxx_nested_name_specifier (this, TYPE_CONTEXT (t));
+ pp_cxx_unqualified_id (this, TYPE_NAME (t));
break;
default:
- pp_c_type_specifier (pp, t);
+ c_pretty_printer::simple_type_specifier (t);
break;
}
}
@@ -1300,7 +1300,7 @@
case TYPE_DECL:
case BOUND_TEMPLATE_TEMPLATE_PARM:
pp_cxx_cv_qualifier_seq (pp, t);
- pp_cxx_simple_type_specifier (pp, t);
+ pp->simple_type_specifier (t);
break;
case METHOD_TYPE:
@@ -2427,5 +2427,4 @@
type_specifier_seq = (pp_fun) pp_cxx_type_specifier_seq;
parameter_list = (pp_fun) pp_cxx_parameter_declaration_clause;
- simple_type_specifier = (pp_fun) pp_cxx_simple_type_specifier;
}
===================================================================
@@ -46,6 +46,7 @@
void statement (tree);
void declaration (tree);
void declaration_specifiers (tree);
+ void simple_type_specifier (tree);
void function_specifier (tree);
void declarator (tree);
void direct_declarator (tree);