mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-27 17:40:49 +00:00
gdb
* value.h (evaluate_subexpression_type, extract_field_op): Declare. * printcmd.c (_initialize_printcmd): Use expression_completer for 'p', 'inspect', 'call'. * parser-defs.h (parse_field_expression): Declare. * parse.c: Include exceptions.h. (in_parse_field, expout_last_struct): New globals. (mark_struct_expression): New function. (prefixify_expression): Return int. (prefixify_subexp): Return int. Use expout_last_struct. (parse_exp_1): Update. (parse_exp_in_context): Add 'out_subexp' argument. Handle in_parse_field. (parse_field_expression): New function. * expression.h (parse_field_expression): Declare. (in_parse_field): Likewise. * eval.c (evaluate_subexpression_type): New function. (extract_field_op): Likewise. * completer.h (expression_completer): Declare. * completer.c (expression_completer): New function. (count_struct_fields, add_struct_fields): New functions. * c-exp.y (yyparse): Redefine. (COMPLETE): New token. (exp): New productions. (saw_name_at_eof, last_was_structop): New globals. (yylex): Return COMPLETE when needed. Recognize in_parse_field. (c_parse): New function. * breakpoint.c (_initialize_breakpoint): Use expression_completer for watch, awatch, and rwatch. * Makefile.in (parse.o): Depend on exceptions_h. gdb/testsuite * gdb.base/break1.c (struct some_struct): New struct. (values): New global. * gdb.base/completion.exp: Add field name completion test. gdb/doc * gdb.texinfo (Completion): Add field name example.
This commit is contained in:
@@ -2366,7 +2366,7 @@ Call a function in the program.\n\
|
||||
The argument is the function name and arguments, in the notation of the\n\
|
||||
current working language. The result is printed and saved in the value\n\
|
||||
history, if it is not void."));
|
||||
set_cmd_completer (c, location_completer);
|
||||
set_cmd_completer (c, expression_completer);
|
||||
|
||||
add_cmd ("variable", class_vars, set_command, _("\
|
||||
Evaluate expression EXP and assign result to variable VAR, using assignment\n\
|
||||
@@ -2399,13 +2399,13 @@ resides in memory.\n\
|
||||
\n\
|
||||
EXP may be preceded with /FMT, where FMT is a format letter\n\
|
||||
but no count or size letter (see \"x\" command)."));
|
||||
set_cmd_completer (c, location_completer);
|
||||
set_cmd_completer (c, expression_completer);
|
||||
add_com_alias ("p", "print", class_vars, 1);
|
||||
|
||||
c = add_com ("inspect", class_vars, inspect_command, _("\
|
||||
Same as \"print\" command, except that if you are running in the epoch\n\
|
||||
environment, the value is printed in its own window."));
|
||||
set_cmd_completer (c, location_completer);
|
||||
set_cmd_completer (c, expression_completer);
|
||||
|
||||
add_setshow_uinteger_cmd ("max-symbolic-offset", no_class,
|
||||
&max_symbolic_offset, _("\
|
||||
|
||||
Reference in New Issue
Block a user