diff mbox

Disambiguate info_print_options

Message ID 20200128031206.108562-1-tamur@google.com
State New
Headers show

Commit Message

Doug Evans via gdb-patches Jan. 28, 2020, 3:12 a.m. UTC
> So how about "info_vars_funcs_options"?
>
> Maybe make_info_sources_options_def_group should be renamed as well.
> And perhaps info_print_command_completer.  My thinking here is that it
> is best if the related names are all consistent.

Renamed info_print_options, info_print_options_defs,
make_info_print_options_def_group, info_print_command_completer.
Did not rename make_info_sources_options_def_group; it seems not
directly related?

Please take another look, thank you.

---
struct info_print_options is defined in both symtab.c and stack.c, which is
an ODR violation. So, I am renaming info_print_options and related
structs/functions in symtab.c:

info_print_options                ==> info_vars_funcs_options
info_print_options_defs           ==> info_vars_funcs_options_defs
make_info_print_options_def_group ==> make_info_vars_funcs_options_def_group
info_print_command_completer      ==> info_vars_funcs_command_completer

gdb/ChangeLog:

	* symtab.c (info_print_options): Rename to
	info_vars_funcs_options.
	(info_print_options_defs): Rename to
	info_vars_funcs_options_defs.
	(make_info_print_options_def_group): Rename to
	make_info_vars_funcs_options_def_group.
	(info_print_command_completer): Rename to
	info_vars_funcs_command_completer.
	(info_variables_command): Apply name changes.
	(info_functions_command): Likewise.
	(_initialize_symtab): Likewise.
---
 gdb/symtab.c | 46 ++++++++++++++++++++++++----------------------
 1 file changed, 24 insertions(+), 22 deletions(-)

Comments

Doug Evans via gdb-patches Feb. 1, 2020, 11:22 p.m. UTC | #1
Friendly ping?

On Mon, Jan 27, 2020 at 7:12 PM Ali Tamur <tamur@google.com> wrote:

> > So how about "info_vars_funcs_options"?
> >
> > Maybe make_info_sources_options_def_group should be renamed as well.
> > And perhaps info_print_command_completer.  My thinking here is that it
> > is best if the related names are all consistent.
>
> Renamed info_print_options, info_print_options_defs,
> make_info_print_options_def_group, info_print_command_completer.
> Did not rename make_info_sources_options_def_group; it seems not
> directly related?
>
> Please take another look, thank you.
>
> ---
> struct info_print_options is defined in both symtab.c and stack.c, which is
> an ODR violation. So, I am renaming info_print_options and related
> structs/functions in symtab.c:
>
> info_print_options                ==> info_vars_funcs_options
> info_print_options_defs           ==> info_vars_funcs_options_defs
> make_info_print_options_def_group ==>
> make_info_vars_funcs_options_def_group
> info_print_command_completer      ==> info_vars_funcs_command_completer
>
> gdb/ChangeLog:
>
>         * symtab.c (info_print_options): Rename to
>         info_vars_funcs_options.
>         (info_print_options_defs): Rename to
>         info_vars_funcs_options_defs.
>         (make_info_print_options_def_group): Rename to
>         make_info_vars_funcs_options_def_group.
>         (info_print_command_completer): Rename to
>         info_vars_funcs_command_completer.
>         (info_variables_command): Apply name changes.
>         (info_functions_command): Likewise.
>         (_initialize_symtab): Likewise.
> ---
>  gdb/symtab.c | 46 ++++++++++++++++++++++++----------------------
>  1 file changed, 24 insertions(+), 22 deletions(-)
>
> diff --git a/gdb/symtab.c b/gdb/symtab.c
> index f456f4d852..d99be41261 100644
> --- a/gdb/symtab.c
> +++ b/gdb/symtab.c
> @@ -4976,13 +4976,13 @@ symtab_symbol_info (bool quiet, bool
> exclude_minsyms,
>     and 'info functions' commands.  These correspond to the -q, -t, and -n
>     options.  */
>
> -struct info_print_options
> +struct info_vars_funcs_options
>  {
>    bool quiet = false;
>    bool exclude_minsyms = false;
>    char *type_regexp = nullptr;
>
> -  ~info_print_options ()
> +  ~info_vars_funcs_options ()
>    {
>      xfree (type_regexp);
>    }
> @@ -4991,24 +4991,25 @@ struct info_print_options
>  /* The options used by the 'info variables' and 'info functions'
>     commands.  */
>
> -static const gdb::option::option_def info_print_options_defs[] = {
> -  gdb::option::boolean_option_def<info_print_options> {
> +static const gdb::option::option_def info_vars_funcs_options_defs[] = {
> +  gdb::option::boolean_option_def<info_vars_funcs_options> {
>      "q",
> -    [] (info_print_options *opt) { return &opt->quiet; },
> +    [] (info_vars_funcs_options *opt) { return &opt->quiet; },
>      nullptr, /* show_cmd_cb */
>      nullptr /* set_doc */
>    },
>
> -  gdb::option::boolean_option_def<info_print_options> {
> +  gdb::option::boolean_option_def<info_vars_funcs_options> {
>      "n",
> -    [] (info_print_options *opt) { return &opt->exclude_minsyms; },
> +    [] (info_vars_funcs_options *opt) { return &opt->exclude_minsyms; },
>      nullptr, /* show_cmd_cb */
>      nullptr /* set_doc */
>    },
>
> -  gdb::option::string_option_def<info_print_options> {
> +  gdb::option::string_option_def<info_vars_funcs_options> {
>      "t",
> -    [] (info_print_options *opt) { return &opt->type_regexp; },
> +    [] (info_vars_funcs_options *opt) { return &opt->type_regexp;
> +  },
>      nullptr, /* show_cmd_cb */
>      nullptr /* set_doc */
>    }
> @@ -5018,20 +5019,20 @@ static const gdb::option::option_def
> info_print_options_defs[] = {
>     functions'.  */
>
>  static gdb::option::option_def_group
> -make_info_print_options_def_group (info_print_options *opts)
> +make_info_vars_funcs_options_def_group (info_vars_funcs_options *opts)
>  {
> -  return {{info_print_options_defs}, opts};
> +  return {{info_vars_funcs_options_defs}, opts};
>  }
>
>  /* Command completer for 'info variables' and 'info functions'.  */
>
>  static void
> -info_print_command_completer (struct cmd_list_element *ignore,
> -                             completion_tracker &tracker,
> -                             const char *text, const char * /* word */)
> +info_vars_funcs_command_completer (struct cmd_list_element *ignore,
> +                                  completion_tracker &tracker,
> +                                  const char *text, const char * /* word
> */)
>  {
>    const auto group
> -    = make_info_print_options_def_group (nullptr);
> +    = make_info_vars_funcs_options_def_group (nullptr);
>    if (gdb::option::complete_options
>        (tracker, &text, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND,
> group))
>      return;
> @@ -5045,8 +5046,8 @@ info_print_command_completer (struct
> cmd_list_element *ignore,
>  static void
>  info_variables_command (const char *args, int from_tty)
>  {
> -  info_print_options opts;
> -  auto grp = make_info_print_options_def_group (&opts);
> +  info_vars_funcs_options opts;
> +  auto grp = make_info_vars_funcs_options_def_group (&opts);
>    gdb::option::process_options
>      (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
>    if (args != nullptr && *args == '\0')
> @@ -5061,8 +5062,9 @@ info_variables_command (const char *args, int
> from_tty)
>  static void
>  info_functions_command (const char *args, int from_tty)
>  {
> -  info_print_options opts;
> -  auto grp = make_info_print_options_def_group (&opts);
> +  info_vars_funcs_options opts;
> +
> +  auto grp = make_info_vars_funcs_options_def_group (&opts);
>    gdb::option::process_options
>      (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
>    if (args != nullptr && *args == '\0')
> @@ -6709,7 +6711,7 @@ Usage: info variables [-q] [-n] [-t TYPEREGEXP]
> [NAMEREGEXP]\n\
>  Prints the global and static variables.\n"),
>                                       _("global and static variables"),
>                                       true));
> -  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
> +  set_cmd_completer_handle_brkchars (c,
> info_vars_funcs_command_completer);
>    if (dbx_commands)
>      {
>        c = add_com ("whereis", class_info, info_variables_command,
> @@ -6719,7 +6721,7 @@ Usage: whereis [-q] [-n] [-t TYPEREGEXP]
> [NAMEREGEXP]\n\
>  Prints the global and static variables.\n"),
>                                          _("global and static variables"),
>                                          true));
> -      set_cmd_completer_handle_brkchars (c, info_print_command_completer);
> +      set_cmd_completer_handle_brkchars (c,
> info_vars_funcs_command_completer);
>      }
>
>    c = add_info ("functions", info_functions_command,
> @@ -6729,7 +6731,7 @@ Usage: info functions [-q] [-n] [-t TYPEREGEXP]
> [NAMEREGEXP]\n\
>  Prints the functions.\n"),
>                                       _("functions"),
>                                       true));
> -  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
> +  set_cmd_completer_handle_brkchars (c,
> info_vars_funcs_command_completer);
>
>    c = add_info ("types", info_types_command, _("\
>  All type names, or those matching REGEXP.\n\
> --
> 2.25.0.341.g760bfbb309-goog
>
>
Doug Evans via gdb-patches Feb. 5, 2020, 9:39 p.m. UTC | #2
Hi,
If there are no objections, I'm planning to submit this on Friday, Feb 7th.
Thanks.

On Sat, Feb 1, 2020 at 3:22 PM Ali Tamur <tamur@google.com> wrote:

> Friendly ping?
>
> On Mon, Jan 27, 2020 at 7:12 PM Ali Tamur <tamur@google.com> wrote:
>
>> > So how about "info_vars_funcs_options"?
>> >
>> > Maybe make_info_sources_options_def_group should be renamed as well.
>> > And perhaps info_print_command_completer.  My thinking here is that it
>> > is best if the related names are all consistent.
>>
>> Renamed info_print_options, info_print_options_defs,
>> make_info_print_options_def_group, info_print_command_completer.
>> Did not rename make_info_sources_options_def_group; it seems not
>> directly related?
>>
>> Please take another look, thank you.
>>
>> ---
>> struct info_print_options is defined in both symtab.c and stack.c, which
>> is
>> an ODR violation. So, I am renaming info_print_options and related
>> structs/functions in symtab.c:
>>
>> info_print_options                ==> info_vars_funcs_options
>> info_print_options_defs           ==> info_vars_funcs_options_defs
>> make_info_print_options_def_group ==>
>> make_info_vars_funcs_options_def_group
>> info_print_command_completer      ==> info_vars_funcs_command_completer
>>
>> gdb/ChangeLog:
>>
>>         * symtab.c (info_print_options): Rename to
>>         info_vars_funcs_options.
>>         (info_print_options_defs): Rename to
>>         info_vars_funcs_options_defs.
>>         (make_info_print_options_def_group): Rename to
>>         make_info_vars_funcs_options_def_group.
>>         (info_print_command_completer): Rename to
>>         info_vars_funcs_command_completer.
>>         (info_variables_command): Apply name changes.
>>         (info_functions_command): Likewise.
>>         (_initialize_symtab): Likewise.
>> ---
>>  gdb/symtab.c | 46 ++++++++++++++++++++++++----------------------
>>  1 file changed, 24 insertions(+), 22 deletions(-)
>>
>> diff --git a/gdb/symtab.c b/gdb/symtab.c
>> index f456f4d852..d99be41261 100644
>> --- a/gdb/symtab.c
>> +++ b/gdb/symtab.c
>> @@ -4976,13 +4976,13 @@ symtab_symbol_info (bool quiet, bool
>> exclude_minsyms,
>>     and 'info functions' commands.  These correspond to the -q, -t, and -n
>>     options.  */
>>
>> -struct info_print_options
>> +struct info_vars_funcs_options
>>  {
>>    bool quiet = false;
>>    bool exclude_minsyms = false;
>>    char *type_regexp = nullptr;
>>
>> -  ~info_print_options ()
>> +  ~info_vars_funcs_options ()
>>    {
>>      xfree (type_regexp);
>>    }
>> @@ -4991,24 +4991,25 @@ struct info_print_options
>>  /* The options used by the 'info variables' and 'info functions'
>>     commands.  */
>>
>> -static const gdb::option::option_def info_print_options_defs[] = {
>> -  gdb::option::boolean_option_def<info_print_options> {
>> +static const gdb::option::option_def info_vars_funcs_options_defs[] = {
>> +  gdb::option::boolean_option_def<info_vars_funcs_options> {
>>      "q",
>> -    [] (info_print_options *opt) { return &opt->quiet; },
>> +    [] (info_vars_funcs_options *opt) { return &opt->quiet; },
>>      nullptr, /* show_cmd_cb */
>>      nullptr /* set_doc */
>>    },
>>
>> -  gdb::option::boolean_option_def<info_print_options> {
>> +  gdb::option::boolean_option_def<info_vars_funcs_options> {
>>      "n",
>> -    [] (info_print_options *opt) { return &opt->exclude_minsyms; },
>> +    [] (info_vars_funcs_options *opt) { return &opt->exclude_minsyms; },
>>      nullptr, /* show_cmd_cb */
>>      nullptr /* set_doc */
>>    },
>>
>> -  gdb::option::string_option_def<info_print_options> {
>> +  gdb::option::string_option_def<info_vars_funcs_options> {
>>      "t",
>> -    [] (info_print_options *opt) { return &opt->type_regexp; },
>> +    [] (info_vars_funcs_options *opt) { return &opt->type_regexp;
>> +  },
>>      nullptr, /* show_cmd_cb */
>>      nullptr /* set_doc */
>>    }
>> @@ -5018,20 +5019,20 @@ static const gdb::option::option_def
>> info_print_options_defs[] = {
>>     functions'.  */
>>
>>  static gdb::option::option_def_group
>> -make_info_print_options_def_group (info_print_options *opts)
>> +make_info_vars_funcs_options_def_group (info_vars_funcs_options *opts)
>>  {
>> -  return {{info_print_options_defs}, opts};
>> +  return {{info_vars_funcs_options_defs}, opts};
>>  }
>>
>>  /* Command completer for 'info variables' and 'info functions'.  */
>>
>>  static void
>> -info_print_command_completer (struct cmd_list_element *ignore,
>> -                             completion_tracker &tracker,
>> -                             const char *text, const char * /* word */)
>> +info_vars_funcs_command_completer (struct cmd_list_element *ignore,
>> +                                  completion_tracker &tracker,
>> +                                  const char *text, const char * /* word
>> */)
>>  {
>>    const auto group
>> -    = make_info_print_options_def_group (nullptr);
>> +    = make_info_vars_funcs_options_def_group (nullptr);
>>    if (gdb::option::complete_options
>>        (tracker, &text, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND,
>> group))
>>      return;
>> @@ -5045,8 +5046,8 @@ info_print_command_completer (struct
>> cmd_list_element *ignore,
>>  static void
>>  info_variables_command (const char *args, int from_tty)
>>  {
>> -  info_print_options opts;
>> -  auto grp = make_info_print_options_def_group (&opts);
>> +  info_vars_funcs_options opts;
>> +  auto grp = make_info_vars_funcs_options_def_group (&opts);
>>    gdb::option::process_options
>>      (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
>>    if (args != nullptr && *args == '\0')
>> @@ -5061,8 +5062,9 @@ info_variables_command (const char *args, int
>> from_tty)
>>  static void
>>  info_functions_command (const char *args, int from_tty)
>>  {
>> -  info_print_options opts;
>> -  auto grp = make_info_print_options_def_group (&opts);
>> +  info_vars_funcs_options opts;
>> +
>> +  auto grp = make_info_vars_funcs_options_def_group (&opts);
>>    gdb::option::process_options
>>      (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
>>    if (args != nullptr && *args == '\0')
>> @@ -6709,7 +6711,7 @@ Usage: info variables [-q] [-n] [-t TYPEREGEXP]
>> [NAMEREGEXP]\n\
>>  Prints the global and static variables.\n"),
>>                                       _("global and static variables"),
>>                                       true));
>> -  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
>> +  set_cmd_completer_handle_brkchars (c,
>> info_vars_funcs_command_completer);
>>    if (dbx_commands)
>>      {
>>        c = add_com ("whereis", class_info, info_variables_command,
>> @@ -6719,7 +6721,7 @@ Usage: whereis [-q] [-n] [-t TYPEREGEXP]
>> [NAMEREGEXP]\n\
>>  Prints the global and static variables.\n"),
>>                                          _("global and static variables"),
>>                                          true));
>> -      set_cmd_completer_handle_brkchars (c,
>> info_print_command_completer);
>> +      set_cmd_completer_handle_brkchars (c,
>> info_vars_funcs_command_completer);
>>      }
>>
>>    c = add_info ("functions", info_functions_command,
>> @@ -6729,7 +6731,7 @@ Usage: info functions [-q] [-n] [-t TYPEREGEXP]
>> [NAMEREGEXP]\n\
>>  Prints the functions.\n"),
>>                                       _("functions"),
>>                                       true));
>> -  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
>> +  set_cmd_completer_handle_brkchars (c,
>> info_vars_funcs_command_completer);
>>
>>    c = add_info ("types", info_types_command, _("\
>>  All type names, or those matching REGEXP.\n\
>> --
>> 2.25.0.341.g760bfbb309-goog
>>
>>
Simon Marchi Feb. 5, 2020, 9:49 p.m. UTC | #3
On 2020-02-05 4:39 p.m., Ali Tamur via gdb-patches wrote:
> Hi,
> If there are no objections, I'm planning to submit this on Friday, Feb 7th.
> Thanks.

The patch LGTM, please go ahead and push it.

Thanks,

Simon
diff mbox

Patch

diff --git a/gdb/symtab.c b/gdb/symtab.c
index f456f4d852..d99be41261 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -4976,13 +4976,13 @@  symtab_symbol_info (bool quiet, bool exclude_minsyms,
    and 'info functions' commands.  These correspond to the -q, -t, and -n
    options.  */
 
-struct info_print_options
+struct info_vars_funcs_options
 {
   bool quiet = false;
   bool exclude_minsyms = false;
   char *type_regexp = nullptr;
 
-  ~info_print_options ()
+  ~info_vars_funcs_options ()
   {
     xfree (type_regexp);
   }
@@ -4991,24 +4991,25 @@  struct info_print_options
 /* The options used by the 'info variables' and 'info functions'
    commands.  */
 
-static const gdb::option::option_def info_print_options_defs[] = {
-  gdb::option::boolean_option_def<info_print_options> {
+static const gdb::option::option_def info_vars_funcs_options_defs[] = {
+  gdb::option::boolean_option_def<info_vars_funcs_options> {
     "q",
-    [] (info_print_options *opt) { return &opt->quiet; },
+    [] (info_vars_funcs_options *opt) { return &opt->quiet; },
     nullptr, /* show_cmd_cb */
     nullptr /* set_doc */
   },
 
-  gdb::option::boolean_option_def<info_print_options> {
+  gdb::option::boolean_option_def<info_vars_funcs_options> {
     "n",
-    [] (info_print_options *opt) { return &opt->exclude_minsyms; },
+    [] (info_vars_funcs_options *opt) { return &opt->exclude_minsyms; },
     nullptr, /* show_cmd_cb */
     nullptr /* set_doc */
   },
 
-  gdb::option::string_option_def<info_print_options> {
+  gdb::option::string_option_def<info_vars_funcs_options> {
     "t",
-    [] (info_print_options *opt) { return &opt->type_regexp; },
+    [] (info_vars_funcs_options *opt) { return &opt->type_regexp;
+  },
     nullptr, /* show_cmd_cb */
     nullptr /* set_doc */
   }
@@ -5018,20 +5019,20 @@  static const gdb::option::option_def info_print_options_defs[] = {
    functions'.  */
 
 static gdb::option::option_def_group
-make_info_print_options_def_group (info_print_options *opts)
+make_info_vars_funcs_options_def_group (info_vars_funcs_options *opts)
 {
-  return {{info_print_options_defs}, opts};
+  return {{info_vars_funcs_options_defs}, opts};
 }
 
 /* Command completer for 'info variables' and 'info functions'.  */
 
 static void
-info_print_command_completer (struct cmd_list_element *ignore,
-			      completion_tracker &tracker,
-			      const char *text, const char * /* word */)
+info_vars_funcs_command_completer (struct cmd_list_element *ignore,
+				   completion_tracker &tracker,
+				   const char *text, const char * /* word */)
 {
   const auto group
-    = make_info_print_options_def_group (nullptr);
+    = make_info_vars_funcs_options_def_group (nullptr);
   if (gdb::option::complete_options
       (tracker, &text, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, group))
     return;
@@ -5045,8 +5046,8 @@  info_print_command_completer (struct cmd_list_element *ignore,
 static void
 info_variables_command (const char *args, int from_tty)
 {
-  info_print_options opts;
-  auto grp = make_info_print_options_def_group (&opts);
+  info_vars_funcs_options opts;
+  auto grp = make_info_vars_funcs_options_def_group (&opts);
   gdb::option::process_options
     (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
   if (args != nullptr && *args == '\0')
@@ -5061,8 +5062,9 @@  info_variables_command (const char *args, int from_tty)
 static void
 info_functions_command (const char *args, int from_tty)
 {
-  info_print_options opts;
-  auto grp = make_info_print_options_def_group (&opts);
+  info_vars_funcs_options opts;
+
+  auto grp = make_info_vars_funcs_options_def_group (&opts);
   gdb::option::process_options
     (&args, gdb::option::PROCESS_OPTIONS_UNKNOWN_IS_OPERAND, grp);
   if (args != nullptr && *args == '\0')
@@ -6709,7 +6711,7 @@  Usage: info variables [-q] [-n] [-t TYPEREGEXP] [NAMEREGEXP]\n\
 Prints the global and static variables.\n"),
 				      _("global and static variables"),
 				      true));
-  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
+  set_cmd_completer_handle_brkchars (c, info_vars_funcs_command_completer);
   if (dbx_commands)
     {
       c = add_com ("whereis", class_info, info_variables_command,
@@ -6719,7 +6721,7 @@  Usage: whereis [-q] [-n] [-t TYPEREGEXP] [NAMEREGEXP]\n\
 Prints the global and static variables.\n"),
 					 _("global and static variables"),
 					 true));
-      set_cmd_completer_handle_brkchars (c, info_print_command_completer);
+      set_cmd_completer_handle_brkchars (c, info_vars_funcs_command_completer);
     }
 
   c = add_info ("functions", info_functions_command,
@@ -6729,7 +6731,7 @@  Usage: info functions [-q] [-n] [-t TYPEREGEXP] [NAMEREGEXP]\n\
 Prints the functions.\n"),
 				      _("functions"),
 				      true));
-  set_cmd_completer_handle_brkchars (c, info_print_command_completer);
+  set_cmd_completer_handle_brkchars (c, info_vars_funcs_command_completer);
 
   c = add_info ("types", info_types_command, _("\
 All type names, or those matching REGEXP.\n\