From cd948f5b2be612b784591dbe438dc518f6b80d61 Mon Sep 17 00:00:00 2001 From: Philippe Waroquiers Date: Sat, 27 Oct 2018 21:25:44 +0200 Subject: [PATCH] OBVIOUS Use report_unrecognized_option_error in 'demangle' and 'info macro' commands. Rather than have some local logic to throw an error for an unrecognized option, use the new cli-utils.h function throwing an error. At the same time, fix some wrong indentation in info_macro_command and fix a small bug in 'demangle' error handling: Without the patch: (gdb) demangle -L c++ abcd Unrecognized option 'c++' to demangle command. Try "help demangle". (gdb) With the patch: (gdb) demangle -L c++ abcd Unrecognized option '-L' to demangle command. Try "help demangle". 2018-10-27 Philippe Waroquiers * macrocmd.c (info_macro_command): Use report_unrecognized_option_error to report a bad option and fix indentation. * demangle.c (demangle_command): Use report_unrecognized_option_error to report a bad option and correctly report the bad option. --- gdb/ChangeLog | 7 +++++++ gdb/demangle.c | 6 +----- gdb/macrocmd.c | 8 ++------ 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2fb66c619c..ff36b9b1f1 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2018-10-27 Philippe Waroquiers + + * macrocmd.c (info_macro_command): Use report_unrecognized_option_error + to report a bad option and fix indentation. + * demangle.c (demangle_command): Use report_unrecognized_option_error + to report a bad option and correctly report the bad option. + 2018-10-27 Tom Tromey PR cli/23364: diff --git a/gdb/demangle.c b/gdb/demangle.c index a37b065893..8b341ee67b 100644 --- a/gdb/demangle.c +++ b/gdb/demangle.c @@ -180,11 +180,7 @@ demangle_command (const char *args, int from_tty) else if (strncmp (arg_start, "--", p - arg_start) == 0) processing_args = 0; else - { - std::string option = extract_arg (&p); - error (_("Unrecognized option '%s' to demangle command. " - "Try \"help demangle\"."), option.c_str ()); - } + report_unrecognized_option_error ("demangle", arg_start); arg_start = skip_spaces (p); } diff --git a/gdb/macrocmd.c b/gdb/macrocmd.c index e6cf921a1b..110423fbae 100644 --- a/gdb/macrocmd.c +++ b/gdb/macrocmd.c @@ -199,13 +199,9 @@ info_macro_command (const char *args, int from_tty) e.g. Scheme's (defmacro ->foo () "bar\n") */ processing_args = 0; else - { - error (_("Unrecognized option '%.*s' to info macro command. " - "Try \"help info macro\"."), - int (p - arg_start), arg_start); - } + report_unrecognized_option_error ("info macro", arg_start); - arg_start = skip_spaces (p); + arg_start = skip_spaces (p); } name = arg_start;