+extern void linespec_lex_to_end (const char **stringp);
+
+extern const char * const linespec_keywords[];
+
+/* Complete a linespec. */
+
+extern void linespec_complete (completion_tracker &tracker,
+ const char *text,
+ symbol_name_match_type match_type);
+
+/* Complete a function symbol, in linespec mode, according to
+ FUNC_MATCH_TYPE. If SOURCE_FILENAME is non-NULL, limits completion
+ to the list of functions defined in source files that match
+ SOURCE_FILENAME. */
+
+extern void linespec_complete_function (completion_tracker &tracker,
+ const char *function,
+ symbol_name_match_type func_match_type,
+ 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,
+ symbol_name_match_type name_match_type,
+ const char *label_name);