From cfb069a8bebfacaf00dee6446e86a856978670be Mon Sep 17 00:00:00 2001 From: Gary Benson Date: Sat, 31 Jan 2015 15:24:26 -0800 Subject: [PATCH] ChangeLog entries for max-completions patch. gdb/ChangeLog: PR cli/9007 PR cli/11920 PR cli/15548 * cli/cli-cmds.c (complete_command): Notify user if max-completions reached. * common/common-exceptions.h (enum errors) : New value. * completer.h (get_max_completions_reached_message): New declaration. (max_completions): Likewise. (completion_tracker_t): New typedef. (new_completion_tracker): New declaration. (make_cleanup_free_completion_tracker): Likewise. (maybe_add_completion_enum): New enum. (maybe_add_completion): New declaration. (throw_max_completions_reached_error): Likewise. * completer.c (max_completions): New global variable. (new_completion_tracker): New function. (free_completion_tracker): Likewise. (make_cleanup_free_completion_tracker): Likewise. (maybe_add_completions): Likewise. (throw_max_completions_reached_error): Likewise. (complete_line): Remove duplicates and limit result to max_completions entries. (get_max_completions_reached_message): New function. (gdb_display_match_list): Handle max_completions. (_initialize_completer): New declaration and function. * symtab.c: Include completer.h. (completion_tracker): New static variable. (completion_list_add_name): Call maybe_add_completion. (default_make_symbol_completion_list_break_on_1): Renamed from default_make_symbol_completion_list_break_on. Maintain completion_tracker across calls to completion_list_add_name. (default_make_symbol_completion_list_break_on): New function. * top.c (init_main): Set rl_completion_display_matches_hook. * tui/tui-io.c: Include completer.h. (tui_old_rl_display_matches_hook): New static global. (tui_rl_display_match_list): Notify user if max-completions reached. (tui_setup_io): Save/restore rl_completion_display_matches_hook. * NEWS (New Options): Mention set/show max-completions. gdb/doc/ChangeLog: * gdb.texinfo (Command Completion): Document new "set/show max-completions" option. gdb/testsuite/ChangeLog: * gdb.base/completion.exp: Disable completion limiting for existing tests. Add new tests to check completion limiting. * gdb.linespec/ls-errs.exp: Disable completion limiting. --- gdb/ChangeLog | 43 +++++++++++++++++++++++++++++++++++++++++ gdb/doc/ChangeLog | 6 ++++++ gdb/testsuite/ChangeLog | 6 ++++++ 3 files changed, 55 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ad36a70241..e88cd57e1a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,46 @@ +2015-01-31 Gary Benson + Doug Evans + + PR cli/9007 + PR cli/11920 + PR cli/15548 + * cli/cli-cmds.c (complete_command): Notify user if max-completions + reached. + * common/common-exceptions.h (enum errors) + : New value. + * completer.h (get_max_completions_reached_message): New declaration. + (max_completions): Likewise. + (completion_tracker_t): New typedef. + (new_completion_tracker): New declaration. + (make_cleanup_free_completion_tracker): Likewise. + (maybe_add_completion_enum): New enum. + (maybe_add_completion): New declaration. + (throw_max_completions_reached_error): Likewise. + * completer.c (max_completions): New global variable. + (new_completion_tracker): New function. + (free_completion_tracker): Likewise. + (make_cleanup_free_completion_tracker): Likewise. + (maybe_add_completions): Likewise. + (throw_max_completions_reached_error): Likewise. + (complete_line): Remove duplicates and limit result to max_completions + entries. + (get_max_completions_reached_message): New function. + (gdb_display_match_list): Handle max_completions. + (_initialize_completer): New declaration and function. + * symtab.c: Include completer.h. + (completion_tracker): New static variable. + (completion_list_add_name): Call maybe_add_completion. + (default_make_symbol_completion_list_break_on_1): Renamed from + default_make_symbol_completion_list_break_on. Maintain + completion_tracker across calls to completion_list_add_name. + (default_make_symbol_completion_list_break_on): New function. + * top.c (init_main): Set rl_completion_display_matches_hook. + * tui/tui-io.c: Include completer.h. + (tui_old_rl_display_matches_hook): New static global. + (tui_rl_display_match_list): Notify user if max-completions reached. + (tui_setup_io): Save/restore rl_completion_display_matches_hook. + * NEWS (New Options): Mention set/show max-completions. + 2015-01-31 Gary Benson * symtab.c (struct add_name_data) : New field. diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index be5f2a6de2..9c12d9af8e 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,9 @@ +2015-01-31 Gary Benson + Doug Evans + + * gdb.texinfo (Command Completion): Document new + "set/show max-completions" option. + 2015-01-31 Doug Evans * gdb.texinfo (Symbols): Document new commands diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index c5cff1867e..08c951cf64 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2015-01-31 Gary Benson + + * gdb.base/completion.exp: Disable completion limiting for + existing tests. Add new tests to check completion limiting. + * gdb.linespec/ls-errs.exp: Disable completion limiting. + 2015-01-31 Doug Evans * gdb.ada/dyn_arrayidx.exp: Add additional_flags=-gnat12.