From da6ca2b5ee8cf03215697da17fd7f1a4f21bf2ba Mon Sep 17 00:00:00 2001 From: Gabriel Dos Reis Date: Thu, 22 Aug 2013 10:14:46 +0000 Subject: pretty-print.h (output_buffer::output_buffer): Declare. * pretty-print.h (output_buffer::output_buffer): Declare. (pretty_printer::pretty_printer): Likewise. (pp_construct): Remove. * pretty-print.c (output_buffer::output_buffer): Define. (pretty_printer::pretty_printer): Rename from pp_construct. Simplify. * gimple-pretty-print.c (print_gimple_stmt): Do not call pp_construct. (print_gimple_expr): Likewise. (print_gimple_seq): Likewise. (gimple_dump_bb): Likewise. * sched-vis.c (dump_value_slim): Likewise. (dump_insn_slim): Likewise. (dump_rtl_slim): Likewise. (str_pattern_slim): Likewise. * tree-mudflap.c (mf_varname_tree): Likewise. * graph.c (print_graph_cfg): Likewise. (start_graph_dump): Likewise. * tree-pretty-print.c (maybe_init_pretty_print): Likewise. Use placement-new. * diagnostic.c (diagnostic_initialize): Simplify early diagnostic pretty printer initialization. * coretypes.h (diagnostic_context): Remove superflous type alias declaration. (pretty_printer): Likewise. Declare directly as a class. (pretty_print_info): Remove declaration as class. * asan.c (asan_emit_stack_protection): Remove call to pp_construct and pp_clear_output_area. (asan_add_global): Likewise. c/ * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty printer initialization. c-family/ * c-pretty-print.h (pp_c_pretty_printer_init): Remove. (c_pretty_printer::c_pretty_printer): Declare. * c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from c_pretty_printer_init. Adjust. (print_c_tree): Do not call c_pretty_printer_init. * c-ada-spec.c (dump_ads): Remove call to pp_construct. cp/ * error.c (init_error): Remove calls to pp_construct and pp_cxx_pretty_printer_init. Initialize cxx_pp with placement-new. * cxx-pretty-print.h (cxx_pretty_printer::cxx_pretty_printer): Declare. (cxx_pretty_printer_init): Remove. * cxx-pretty-print.c (cxx_pretty_printer::cxx_pretty_printer): Rename from cxx_pretty_printer_init. Adjust. * cp-objcp-common.c (cxx_initialize_diagnostics): Simplify initialization of C++ diagnostics pretty printer. From-SVN: r201918 --- gcc/pretty-print.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'gcc/pretty-print.h') diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h index 95577063da5..4c47e2b1a25 100644 --- a/gcc/pretty-print.h +++ b/gcc/pretty-print.h @@ -73,6 +73,8 @@ struct chunk_info whose fields should not be accessed directly by clients. */ struct output_buffer { + output_buffer (); + /* Obstack where the text is built up. */ struct obstack formatted_obstack; @@ -157,8 +159,12 @@ typedef bool (*printer_fn) (pretty_printer *, text_info *, const char *, /* The data structure that contains the bare minimum required to do proper pretty-printing. Clients may derived from this structure and add additional fields they need. */ -struct pretty_print_info +struct pretty_printer { + // Default construct a pretty printer with specified prefix + // and a maximum line length cut off limit. + explicit pretty_printer (const char* = NULL, int = 0); + /* Where we print external representation of ENTITY. */ output_buffer *buffer; @@ -283,7 +289,6 @@ pp_get_prefix (const pretty_printer *pp) { return pp->prefix; } #define pp_buffer(PP) (PP)->buffer -extern void pp_construct (pretty_printer *, const char *, int); extern void pp_set_line_maximum_length (pretty_printer *, int); extern void pp_set_prefix (pretty_printer *, const char *); extern void pp_destroy_prefix (pretty_printer *); -- cgit v1.2.1