This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[review v7] gdb/mi: Add new commands -symbol-info-{functions,variables,types}
- From: "Simon Marchi (Code Review)" <gerrit at gnutoolchain-gerrit dot osci dot io>
- To: Andrew Burgess <andrew dot burgess at embecosm dot com>, gdb-patches at sourceware dot org
- Cc: Joel Brobecker <brobecker at adacore dot com>, Tom Tromey <tromey at sourceware dot org>
- Date: Tue, 26 Nov 2019 23:11:13 -0500
- Subject: [review v7] gdb/mi: Add new commands -symbol-info-{functions,variables,types}
- Auto-submitted: auto-generated
- References: <gerrit.1571909344000.Ic2fc6a6750bbce91cdde2344791014e5ef45642d@gnutoolchain-gerrit.osci.io>
- Reply-to: gnutoolchain-gerrit at osci dot io
Simon Marchi has posted comments on this change.
Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/266
......................................................................
Patch Set 7: Code-Review+1
(2 comments)
Sorry about my previous message, operator error.
This LGTM with the nits I pointed out addressed.
| --- gdb/mi/mi-symbol-cmds.c
| +++ gdb/mi/mi-symbol-cmds.c
| @@ -62,0 +79,19 @@ output_debug_symbol (ui_out *uiout, enum search_domain kind,
| + uiout->field_string ("name", sym->print_name ());
| +
| + if (kind == FUNCTIONS_DOMAIN || kind == VARIABLES_DOMAIN)
| + {
| + string_file tmp_stream;
| + type_print (SYMBOL_TYPE (sym), "", &tmp_stream, -1);
| + uiout->field_string ("type", tmp_stream.string ());
| +
| + std::string str = symbol_to_info_string (sym, block, kind);
| + uiout->field_string ("description", str.c_str ());
PS7, Line 88:
There's an overload of field_string that takes an std::string
directly. Might as well use that.
| + }
| +}
| +
| +/* Actually output one nondebug symbol, puts a tuple emitter in place
| + and then outputs the fields for this msymbol. */
| +
| +static void
| +output_nondebug_symbol (ui_out *uiout,
| + const struct bound_minimal_symbol &msymbol)
...
| @@ -62,0 +155,19 @@ mi_symbol_info (enum search_domain kind, const char *regexp,
| + /* Non-debug symbols are placed after. */
| + if (i < symbols.size ())
| + {
| + ui_out_emit_list nondebug_symbols_list_emitter (uiout, "nondebug");
| +
| + /* As long as we have nondebug symbols... */
| + for (; i < symbols.size (); i++)
| + {
| + gdb_assert (symbols[i].msymbol.minsym != nullptr);
| + output_nondebug_symbol(uiout, symbols[i].msymbol);
PS7, Line 164:
Missing space here too.
| + }
| + }
| +}
| +
| +/* Helper for mi_cmd_symbol_info_{functions,variables} - depending on KIND.
| + Processes command line options from ARGV and ARGC. */
| +
| +static void
| +mi_info_functions_or_variables (enum search_domain kind, char **argv, int argc)
--
Gerrit-Project: binutils-gdb
Gerrit-Branch: master
Gerrit-Change-Id: Ic2fc6a6750bbce91cdde2344791014e5ef45642d
Gerrit-Change-Number: 266
Gerrit-PatchSet: 7
Gerrit-Owner: Andrew Burgess <andrew.burgess@embecosm.com>
Gerrit-Reviewer: Andrew Burgess <andrew.burgess@embecosm.com>
Gerrit-Reviewer: Simon Marchi <simon.marchi@polymtl.ca>
Gerrit-Reviewer: Tom Tromey <tromey@sourceware.org>
Gerrit-CC: Joel Brobecker <brobecker@adacore.com>
Gerrit-Comment-Date: Wed, 27 Nov 2019 04:11:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment