diff options
author | Pedro Alves <palves@redhat.com> | 2019-06-13 00:06:53 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2019-06-13 00:18:41 +0100 |
commit | 2daf894ed0baf72dd3f422b7a71630145568db30 (patch) | |
tree | 1104f2bc9b33ebe06c6bc744d7c4cca29c04985c | |
parent | e6ed716cd5514c08b9d7c469d185b1aa177dbc22 (diff) | |
download | gdb-2daf894ed0baf72dd3f422b7a71630145568db30.zip gdb-2daf894ed0baf72dd3f422b7a71630145568db30.tar.gz gdb-2daf894ed0baf72dd3f422b7a71630145568db30.tar.bz2 |
"set print raw frame-arguments" -> "set print raw-frame-arguments"
A following patch will introduce options for the "backtrace" command,
based on some "set print" and "set backtrace" settings. There's one
setting in particular that is a bit annoying if we want to describe
the backtrace options and the settings commands using the same data
structures:
"set print raw frame-arguments"
The problem is that space between "raw" and "frame-arguments".
Calling the option
"bt -raw frame-arguments"
would be odd. So I'm calling the option
"bt -raw-frame-arguments"
instead.
And for consistency, this patch renames the set/show commands to:
"set print raw-frame-arguments"
"show print raw-frame-arguments"
I.e., dash instead of space. The old commands are left in place, but
marked deprecated.
We need to adjust a couple testcases, because the relevant tests use
gdb_test_no_output and the old commands are no longer silent:
(gdb) set print raw frame-arguments on
Warning: command 'set print raw frame-arguments' is deprecated.
Use 'set print raw-frame-arguments'.
gdb/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* NEWS (Changed commands): Mention set/show print raw-frame-arguments,
and that "set/show print raw frame-arguments" are now deprecated.
* cli/cli-decode.c (add_setshow_boolean_cmd): Now returns the
command.
* command.h (add_setshow_boolean_cmd): Return cmd_list_element *.
* stack.c (_initialize_stack): Install "set/show print
raw-frame-arguments", and deprecate "set/show print raw
frame-arguments".
* valprint.c (_initialize_valprint): Deprecate "set/show print
raw".
gdb/doc/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* gdb.texinfo (Print Settings): Document "set/show print
raw-frame-arguments" instead of "set/show print raw
frame-arguments".
gdb/testsuite/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* gdb.guile/scm-frame-args.exp: Use "set print
raw-frame-arguments" instead of "set print raw frame-arguments".
* gdb.python/py-frame-args.exp: Likewise.
-rw-r--r-- | gdb/ChangeLog | 14 | ||||
-rw-r--r-- | gdb/NEWS | 7 | ||||
-rw-r--r-- | gdb/cli/cli-decode.c | 8 | ||||
-rw-r--r-- | gdb/command.h | 19 | ||||
-rw-r--r-- | gdb/doc/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/doc/gdb.texinfo | 6 | ||||
-rw-r--r-- | gdb/stack.c | 16 | ||||
-rw-r--r-- | gdb/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/testsuite/gdb.guile/scm-frame-args.exp | 4 | ||||
-rw-r--r-- | gdb/testsuite/gdb.python/py-frame-args.exp | 4 | ||||
-rw-r--r-- | gdb/valprint.c | 19 |
11 files changed, 83 insertions, 26 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9e3629a..c3453b0 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,19 @@ 2019-06-13 Pedro Alves <palves@redhat.com> + * NEWS (Changed commands): Mention set/show print raw-frame-arguments, + and that "set/show print raw frame-arguments" are now deprecated. + + * cli/cli-decode.c (add_setshow_boolean_cmd): Now returns the + command. + * command.h (add_setshow_boolean_cmd): Return cmd_list_element *. + * stack.c (_initialize_stack): Install "set/show print + raw-frame-arguments", and deprecate "set/show print raw + frame-arguments". + * valprint.c (_initialize_valprint): Deprecate "set/show print + raw". + +2019-06-13 Pedro Alves <palves@redhat.com> + * compile/compile.c (struct compile_options): New. (compile_flag_option_def, compile_command_option_defs) (make_compile_options_def_group): New. @@ -107,6 +107,13 @@ show style a style name in their output using its own style, to help the user visualize the different styles. +set print raw-frame-arguments +show print raw-frame-arguments + + These commands replace the similarly-named "set/show print raw + frame-arguments" commands (now with a dash instead of a space). The + old commands are now deprecated and may be removed in a future + release. * New MI commands diff --git a/gdb/cli/cli-decode.c b/gdb/cli/cli-decode.c index d739a0d..a6ddd8c 100644 --- a/gdb/cli/cli-decode.c +++ b/gdb/cli/cli-decode.c @@ -585,8 +585,10 @@ const char * const boolean_enums[] = { "on", "off", NULL }; /* Add element named NAME to both the set and show command LISTs (the list for set/show or some sublist thereof). CLASS is as in add_cmd. VAR is address of the variable which will contain the - value. SET_DOC and SHOW_DOC are the documentation strings. */ -void + value. SET_DOC and SHOW_DOC are the documentation strings. + Returns the new command element. */ + +cmd_list_element * add_setshow_boolean_cmd (const char *name, enum command_class theclass, int *var, const char *set_doc, const char *show_doc, const char *help_doc, @@ -603,6 +605,8 @@ add_setshow_boolean_cmd (const char *name, enum command_class theclass, int *var set_list, show_list, &c, NULL); c->enums = boolean_enums; + + return c; } /* Add element named NAME to both the set and show command LISTs (the diff --git a/gdb/command.h b/gdb/command.h index 26e4029..4d52f00 100644 --- a/gdb/command.h +++ b/gdb/command.h @@ -328,15 +328,16 @@ extern void add_setshow_auto_boolean_cmd (const char *name, struct cmd_list_element **set_list, struct cmd_list_element **show_list); -extern void add_setshow_boolean_cmd (const char *name, - enum command_class theclass, - int *var, - const char *set_doc, const char *show_doc, - const char *help_doc, - cmd_const_sfunc_ftype *set_func, - show_value_ftype *show_func, - struct cmd_list_element **set_list, - struct cmd_list_element **show_list); +extern cmd_list_element * + add_setshow_boolean_cmd (const char *name, + enum command_class theclass, + int *var, + const char *set_doc, const char *show_doc, + const char *help_doc, + cmd_const_sfunc_ftype *set_func, + show_value_ftype *show_func, + struct cmd_list_element **set_list, + struct cmd_list_element **show_list); extern void add_setshow_filename_cmd (const char *name, enum command_class theclass, diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 3615e96..013ef02 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,5 +1,11 @@ 2019-06-13 Pedro Alves <palves@redhat.com> + * gdb.texinfo (Print Settings): Document "set/show print + raw-frame-arguments" instead of "set/show print raw + frame-arguments". + +2019-06-13 Pedro Alves <palves@redhat.com> + * gdb.texinfo (Maintenance Commands): Document "maint test-settings" commands. diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 07dc246..2b8758f 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -10533,16 +10533,16 @@ thus speeding up the display of each Ada frame. @item show print frame-arguments Show how the value of arguments should be displayed when printing a frame. -@item set print raw frame-arguments on +@item set print raw-frame-arguments on Print frame arguments in raw, non pretty-printed, form. -@item set print raw frame-arguments off +@item set print raw-frame-arguments off Print frame arguments in pretty-printed form, if there is a pretty-printer for the value (@pxref{Pretty Printing}), otherwise print the value in raw form. This is the default. -@item show print raw frame-arguments +@item show print raw-frame-arguments Show whether to print frame arguments in raw form. @anchor{set print entry-values} diff --git a/gdb/stack.c b/gdb/stack.c index 408c795..d1b195c 100644 --- a/gdb/stack.c +++ b/gdb/stack.c @@ -3106,14 +3106,26 @@ Usage: func NAME")); _("Show printing of non-scalar frame arguments"), NULL, NULL, NULL, &setprintlist, &showprintlist); - add_setshow_boolean_cmd ("frame-arguments", no_class, + /* Install "set print raw frame-arguments", a deprecated spelling of + "set print raw-frame-arguments". */ + cmd = add_setshow_boolean_cmd ("frame-arguments", no_class, + &print_raw_frame_arguments, _("\ +Set whether to print frame arguments in raw form."), _("\ +Show whether to print frame arguments in raw form."), _("\ +If set, frame arguments are printed in raw form, bypassing any\n\ +pretty-printers for that value."), + NULL, NULL, + &setprintrawlist, &showprintrawlist); + deprecate_cmd (cmd, "set print raw-frame-arguments"); + + add_setshow_boolean_cmd ("raw-frame-arguments", no_class, &print_raw_frame_arguments, _("\ Set whether to print frame arguments in raw form."), _("\ Show whether to print frame arguments in raw form."), _("\ If set, frame arguments are printed in raw form, bypassing any\n\ pretty-printers for that value."), NULL, NULL, - &setprintrawlist, &showprintrawlist); + &setprintlist, &showprintlist); add_setshow_auto_boolean_cmd ("disassemble-next-line", class_stack, &disassemble_next_line, _("\ diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 3684bfa..853aeb7 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,11 @@ 2019-06-13 Pedro Alves <palves@redhat.com> + * gdb.guile/scm-frame-args.exp: Use "set print + raw-frame-arguments" instead of "set print raw frame-arguments". + * gdb.python/py-frame-args.exp: Likewise. + +2019-06-13 Pedro Alves <palves@redhat.com> + * gdb.compile/compile.exp: Adjust expected output to option processing changes. diff --git a/gdb/testsuite/gdb.guile/scm-frame-args.exp b/gdb/testsuite/gdb.guile/scm-frame-args.exp index 9a531f0..cae2167 100644 --- a/gdb/testsuite/gdb.guile/scm-frame-args.exp +++ b/gdb/testsuite/gdb.guile/scm-frame-args.exp @@ -38,7 +38,7 @@ gdb_continue_to_breakpoint "break-here" ".* break-here .*" # Test all combinations with raw off. -gdb_test_no_output "set print raw frame-arguments off" +gdb_test_no_output "set print raw-frame-arguments off" gdb_test_no_output "set print frame-arguments none" gdb_test "frame" ".*foo \\(x=\[.\]{3}, ss=\[.\]{3}\\).*" \ @@ -57,7 +57,7 @@ gdb_test "frame" \ # Test all combinations with raw on. -gdb_test_no_output "set print raw frame-arguments on" +gdb_test_no_output "set print raw-frame-arguments on" gdb_test_no_output "set print frame-arguments none" gdb_test "frame" ".*foo \\(x=\[.\]{3}, ss=\[.\]{3}\\).*" \ diff --git a/gdb/testsuite/gdb.python/py-frame-args.exp b/gdb/testsuite/gdb.python/py-frame-args.exp index a324735..b921330 100644 --- a/gdb/testsuite/gdb.python/py-frame-args.exp +++ b/gdb/testsuite/gdb.python/py-frame-args.exp @@ -36,7 +36,7 @@ gdb_continue_to_breakpoint "break-here" ".* break-here .*" # Test all combinations with raw off. -gdb_test_no_output "set print raw frame-arguments off" +gdb_test_no_output "set print raw-frame-arguments off" gdb_test_no_output "set print frame-arguments none" gdb_test "frame" ".*foo \\(x=\[.\]{3}, ss=\[.\]{3}\\).*" \ @@ -53,7 +53,7 @@ gdb_test "frame" \ # Test all combinations with raw on. -gdb_test_no_output "set print raw frame-arguments on" +gdb_test_no_output "set print raw-frame-arguments on" gdb_test_no_output "set print frame-arguments none" gdb_test "frame" ".*foo \\(x=\[.\]{3}, ss=\[.\]{3}\\).*" \ diff --git a/gdb/valprint.c b/gdb/valprint.c index e3197e6..6f9b47d 100644 --- a/gdb/valprint.c +++ b/gdb/valprint.c @@ -3248,6 +3248,8 @@ make_value_print_options_def_group (value_print_options *opts) void _initialize_valprint (void) { + cmd_list_element *cmd; + add_prefix_cmd ("print", no_class, set_print, _("Generic command for setting how things print."), &setprintlist, "set print ", 0, &setlist); @@ -3261,13 +3263,18 @@ _initialize_valprint (void) add_alias_cmd ("p", "print", no_class, 1, &showlist); add_alias_cmd ("pr", "print", no_class, 1, &showlist); - add_prefix_cmd ("raw", no_class, set_print_raw, - _("\ + cmd = add_prefix_cmd ("raw", no_class, set_print_raw, + _("\ Generic command for setting what things to print in \"raw\" mode."), - &setprintrawlist, "set print raw ", 0, &setprintlist); - add_prefix_cmd ("raw", no_class, show_print_raw, - _("Generic command for showing \"print raw\" settings."), - &showprintrawlist, "show print raw ", 0, &showprintlist); + &setprintrawlist, "set print raw ", 0, + &setprintlist); + deprecate_cmd (cmd, nullptr); + + cmd = add_prefix_cmd ("raw", no_class, show_print_raw, + _("Generic command for showing \"print raw\" settings."), + &showprintrawlist, "show print raw ", 0, + &showprintlist); + deprecate_cmd (cmd, nullptr); gdb::option::add_setshow_cmds_for_options (class_support, &user_print_options, value_print_option_defs, |