Simplify psym_map_matching_symbols

This introduces a new helper function,
iterate_over_symbols_terminated, and changes psym_map_matching_symbols
to use it.  A subsequent patch will introduce a new user of this
function in the DWARF reader.

gdb/ChangeLog
2019-09-10  Tom Tromey  <tromey@adacore.com>

	* psymtab.c (map_block): Remove.
	(psym_map_matching_symbols): Use iterate_over_symbols_terminated.
	* symtab.c (iterate_over_symbols_terminated): New function.
	* symtab.c (iterate_over_symbols_terminated): Declare.
This commit is contained in:
Tom Tromey
2019-07-12 11:00:39 -06:00
parent 6969f124b9
commit 6a3dbf1bc6
4 changed files with 36 additions and 36 deletions

View File

@ -2106,6 +2106,16 @@ bool iterate_over_symbols (const struct block *block,
const domain_enum domain,
gdb::function_view<symbol_found_callback_ftype> callback);
/* Like iterate_over_symbols, but if all calls to CALLBACK return
true, then calls CALLBACK one additional time with a block_symbol
that has a valid block but a NULL symbol. */
bool iterate_over_symbols_terminated
(const struct block *block,
const lookup_name_info &name,
const domain_enum domain,
gdb::function_view<symbol_found_callback_ftype> callback);
/* Storage type used by demangle_for_lookup. demangle_for_lookup
either returns a const char * pointer that points to either of the
fields of this type, or a pointer to the input NAME. This is done