typedef void (symbol_filename_ftype) (const char *filename,
const char *fullname, void *data);
+/* Callback for quick_symbol_functions->expand_symtabs_matching
+ to match a file name. */
+
+typedef int (expand_symtabs_file_matcher_ftype) (const char *filename,
+ void *data, int basenames);
+
+/* Callback for quick_symbol_functions->expand_symtabs_matching
+ to match a symbol name. */
+
+typedef int (expand_symtabs_symbol_matcher_ftype) (const char *name,
+ void *data);
+
/* The "quick" symbol functions exist so that symbol readers can
avoiding an initial read of all the symbols. For example, symbol
readers might choose to use the "partial symbol table" utilities,
Otherwise, if KIND does not match this symbol is skipped.
- If even KIND matches, then NAME_MATCHER is called for each symbol
+ If even KIND matches, then SYMBOL_MATCHER is called for each symbol
defined in the file. The symbol "search" name and DATA are passed
- to NAME_MATCHER.
+ to SYMBOL_MATCHER.
- If NAME_MATCHER returns zero, then this symbol is skipped.
+ If SYMBOL_MATCHER returns zero, then this symbol is skipped.
Otherwise, this symbol's symbol table is expanded.
functions. */
void (*expand_symtabs_matching)
(struct objfile *objfile,
- int (*file_matcher) (const char *, void *, int basenames),
- int (*name_matcher) (const char *, void *),
+ expand_symtabs_file_matcher_ftype *file_matcher,
+ expand_symtabs_symbol_matcher_ftype *symbol_matcher,
enum search_domain kind,
void *data);
symbol table that contains a symbol whose address is closest to
PC. */
struct symtab *(*find_pc_sect_symtab) (struct objfile *objfile,
- struct minimal_symbol *msymbol,
+ struct bound_minimal_symbol msymbol,
CORE_ADDR pc,
struct obj_section *section,
int warn_if_readin);
The returned value does not have to be freed and it has lifetime of the
OBJFILE. */
VEC (probe_p) *(*sym_get_probes) (struct objfile *);
-
- /* Relocate the probe section of OBJFILE. */
- void (*sym_relocate_probe) (struct objfile *objfile,
- const struct section_offsets *new_offsets,
- const struct section_offsets *delta);
};
/* Structure to keep track of symbol reading functions for various
extern int get_section_index (struct objfile *, char *);
+extern int print_symbol_loading_p (int from_tty, int mainline, int full);
+
/* Utility functions for overlay sections: */
extern enum overlay_debugging_state
{
extern struct cleanup *increment_reading_symtab (void);
-void expand_partial_symbol_names (int (*fun) (const char *, void *),
- void *data);
+void expand_symtabs_matching (expand_symtabs_file_matcher_ftype *,
+ expand_symtabs_symbol_matcher_ftype *,
+ enum search_domain kind, void *data);
-void map_partial_symbol_filenames (symbol_filename_ftype *fun, void *data,
- int need_fullname);
+void map_symbol_filenames (symbol_filename_ftype *fun, void *data,
+ int need_fullname);
/* From dwarf2read.c */