This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] new set/show multiple-symbols command (take 4)


> To summarize again, this patch introduces a new set/show command set:
> 
>         (gdb) set multiple-symbols (ask|all|cancel)
>         (gdb) show multiple-symbols

Ping?

> For everyone's convenience, I'm repeating here the context for this
> new command, to avoid so that a cross-reference is not necessary.
> 
> The idea is that some expressions are ambiguous, and that the debugger
> normally has several options: Select all matching symbols, ask the user
> to select one or more of them, or error out.  This new option allows
> the user to configure how the debugger should behave in that situation:
> 
>   - "all" (default): auto-select all matching symbols.
>   - "ask": Auto-selection is off, so display a menu with all possible
>            choices and ask the user to choose one or more of them.
>   - "cancel": Abort the command explaining why.
> 
> After the new setting was introduced, I modified ada-lang.c and
> linespec.c to take it into account. That resulted in some behavior
> changes which I think I desirable and consistent with what we have done
> recently with multiple-location breakpoints. In order to preserve
> the current testcases, I simply forced multiple-symbols to "ask"
> to reproduce the previous behavior.
> 
> I also added some testing of the cases when multiple-symbols is set to
> "cancel" and "all". I still haven't written an Ada testcase but that's
> very easy. I'll do that next, as well as sending a documentation update
> if this patch is approved (including a NEWS entry).


2008-02-03  Joel Brobecker  <brobecker@adacore.com>

        * symtab.c (multiple_symbols_ask, multiple_symbols_all)
        (multiple_symbols_cancel): New constants.
        (multiple_symbols_modes, multiple_symbols_mode): New static globals.
        (multiple_symbols_select_mode): New function.
        (_initialize_symtab): Add new set/show multiple-symbols commands.
        * symtab.h (multiple_symbols_ask, multiple_symbols_all)
        (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
        * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
        setting.
        * linespec.c (decode_line_2): Likewise.

2008-02-03  Joel Brobecker  <brobecker@adacore.com>

        * gdb.cp/ovldbreak.cc: Add missing bodies for methods foo::foofunc.
        * gdb.cp/ovldbreak.exp: Set multiple-symbols to "ask".
        Add a couple of tests that verify the behavior when the new setting
        is set to "cancel" and "all".
        * gdb.cp/method2.exp, gdb.cp/templates.exp: Set multiple-symbols to
        "ask" before we start the testing.

Tested on x86-linux.
OK to apply?

Thanks,
-- 
Joel

Attachment: ms.diff
Description: Text document

Attachment: ms-tc.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]