diff options
author | Tom Tromey <tromey@redhat.com> | 2012-12-07 20:09:11 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2012-12-07 20:09:11 +0000 |
commit | 2f68a89553836f68b8676beda9287c93e489bc6e (patch) | |
tree | 660cfb00b6001f1f1c3ee19051b85682cf2ce286 /gdb/ada-lang.c | |
parent | 155da5173d74221a3099c22c27de1e8e2214982b (diff) | |
download | gdb-2f68a89553836f68b8676beda9287c93e489bc6e.zip gdb-2f68a89553836f68b8676beda9287c93e489bc6e.tar.gz gdb-2f68a89553836f68b8676beda9287c93e489bc6e.tar.bz2 |
* ada-lang.c (ada_make_symbol_completion_list): Add 'code'
argument, assertion.
* c-exp.y (typebase): Add completion productions.
* completer.c (expression_completer): Handle tag completion.
* expression.h (parse_expression_for_completion): Add argument.
* f-lang.c (f_make_symbol_completion_list): Add 'code'
argument.
* language.h (struct language_defn)
<la_make_symbol_completion_list>: Add 'code' argument.
* parse.c (expout_tag_completion_type, expout_completion_name):
New globals.
(mark_struct_expression): Add assertion.
(mark_completion_tag): New function.
(parse_exp_in_context): Initialize new globals.
(parse_expression_for_completion): Add 'code' argument. Handle
tag completion.
* parser-defs.h (mark_completion_tag): Declare.
* symtab.c (default_make_symbol_completion_list_break_on): Add
'code' argument. Update.
(default_make_symbol_completion_list): Add 'code' argument.
(make_symbol_completion_list): Update.
(make_symbol_completion_type): New function.
* symtab.h (default_make_symbol_completion_list_break_on)
(default_make_symbol_completion_list): Update.
(make_symbol_completion_type): Declare.
testsuite
* gdb.base/break1.c (enum some_enum, union some_union): New.
(some_enum_global, some_union_global, some_value): New globals.
* gdb.base/completion.exp: Add tag completion tests.
Diffstat (limited to 'gdb/ada-lang.c')
-rw-r--r-- | gdb/ada-lang.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index b03b2a2..f07e4bc 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -5802,7 +5802,7 @@ ada_expand_partial_symbol_name (const char *name, void *user_data) the entire command on which completion is made. */ static VEC (char_ptr) * -ada_make_symbol_completion_list (char *text0, char *word) +ada_make_symbol_completion_list (char *text0, char *word, enum type_code code) { char *text; int text_len; @@ -5817,6 +5817,8 @@ ada_make_symbol_completion_list (char *text0, char *word) int i; struct block_iterator iter; + gdb_assert (code == TYPE_CODE_UNDEF); + if (text0[0] == '<') { text = xstrdup (text0); |