aboutsummaryrefslogtreecommitdiff
path: root/gdb/linespec.h
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2017-07-17 20:24:41 +0100
committerPedro Alves <palves@redhat.com>2017-07-17 20:24:41 +0100
commita245927022bc4351fafd9e6275e217021ec93e08 (patch)
tree0446dc2f9ce7476bc3ef3d8649c419b86b20378e /gdb/linespec.h
parentc6756f62e04846d68c24ee922ddb0377d4bd17f2 (diff)
downloadfsf-binutils-gdb-a245927022bc4351fafd9e6275e217021ec93e08.zip
fsf-binutils-gdb-a245927022bc4351fafd9e6275e217021ec93e08.tar.gz
fsf-binutils-gdb-a245927022bc4351fafd9e6275e217021ec93e08.tar.bz2
Explicit locations -label completer
We're missing a completer for (gdb) break -function func -label [TAB] This patch adds one. Tests will be added later in the series. gdb/ChangeLog: 2017-07-17 Pedro Alves <palves@redhat.com> * completer.c (collect_explicit_location_matches): Handle MATCH_LABEL. (convert_explicit_location_to_linespec): New, factored out from ... (convert_explicit_location_to_sals): ... this. (complete_label): New. (linespec_complete_label, find_label_symbols_in_block): New. (find_label_symbols): Add completion_mode parameter and adjust to call find_label_symbols_in_block. * linespec.h (linespec_complete_label): Declare.
Diffstat (limited to 'gdb/linespec.h')
-rw-r--r--gdb/linespec.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/linespec.h b/gdb/linespec.h
index d55ba12..f16bb81 100644
--- a/gdb/linespec.h
+++ b/gdb/linespec.h
@@ -194,6 +194,17 @@ extern void linespec_complete_function (completion_tracker &tracker,
const char *function,
const char *source_filename);
+/* Complete a label symbol, in linespec mode. Only labels of
+ functions named FUNCTION_NAME are considered. If SOURCE_FILENAME
+ is non-NULL, limits completion to labels of functions defined in
+ source files that match SOURCE_FILENAME. */
+
+extern void linespec_complete_label (completion_tracker &tracker,
+ const struct language_defn *language,
+ const char *source_filename,
+ const char *function_name,
+ const char *label_name);
+
/* Evaluate the expression pointed to by EXP_PTR into a CORE_ADDR,
advancing EXP_PTR past any parsed text. */