From 046bebe1c0a367687bd693eb4594fcdcba0b8f7e Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 18 Jul 2019 22:07:10 -0600 Subject: Add more styling to "disassemble" This adds more styling to the disassemble command. In particular, addresses and function names in the disassembly are now styled. This required fixing a small latent bug in set_output_style. This function always passed NULL to emit_style_escape; but when writing to a file other than gdb_stdout, it should emit the style escape directly. (FWIW this is another argument for better integrating the pager with ui_file and getting rid of this entire layer.) gdb/ChangeLog 2019-08-06 Tom Tromey * utils.c (set_output_style): Sometimes pass stream to emit_style_escape. * ui-out.h (class ui_out) : Declare. * record-btrace.c (btrace_insn_history): Update. * mi/mi-out.h (class mi_ui_out) : New method. * disasm.h (gdb_pretty_print_disassembler): Add uiout parameter. Update initializers. : New field. : Move lower. * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn): Remove "uiout" parameter. (dump_insns): Update. * cli-out.h (class cli_ui_out) : Declare. * cli-out.c (cli_ui_out::can_emit_style_escape): New method. gdb/testsuite/ChangeLog 2019-08-06 Tom Tromey * gdb.base/style.exp: Add disassemble test. * gdb.base/style.c (some_called_function): New function. (main): Use it. --- gdb/ui-out.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gdb/ui-out.h') diff --git a/gdb/ui-out.h b/gdb/ui-out.h index 3398e43..7041d96 100644 --- a/gdb/ui-out.h +++ b/gdb/ui-out.h @@ -145,6 +145,10 @@ class ui_out bool query_table_field (int colno, int *width, int *alignment, const char **col_name); + /* Return true if this stream is prepared to handle style + escapes. */ + virtual bool can_emit_style_escape () const = 0; + protected: virtual void do_table_begin (int nbrofcols, int nr_rows, const char *tblid) -- cgit v1.1