Remove ALL_OBJFILE_COMPUNITS

This removes ALL_OBJFILE_COMPUNITS, replacing its uses with ranged for
loops.  Because ALL_COMPUNITS is also updated, in some places a
declaration must be deleted to avoid shadowing.

gdb/ChangeLog
2019-01-09  Tom Tromey  <tom@tromey.com>

	* source.c (select_source_symtab)
	(forget_cached_source_info_for_objfile): Remove declaration.
	* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
	declaration.
	* maint.c (count_symtabs_and_blocks): Remove declaration.
	* cp-support.c (add_symbol_overload_list_qualified): Remove
	declaration.
	* coffread.c (coff_symtab_read): Remove declaration.
	* symtab.c (lookup_symbol_in_objfile_symtabs)
	(basic_lookup_transparent_type_1): Use objfile_compunits.
	(lookup_objfile_from_block, find_pc_sect_compunit_symtab)
	(info_sources_command, search_symbols)
	(default_collect_symbol_completion_matches_break_on)
	(make_source_files_completion_list): Remove declaration.
	* ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
	(ada_collect_symbol_completion_matches)
	(ada_add_global_exceptions): Remove declaration.
	* linespec.c (iterate_over_all_matching_symtabs): Use
	objfile_compunits.
	* objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
	(class objfile_compunits): New.
	(ALL_COMPUNITS): Use objfile_compunits.
	* symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
	(maintenance_check_symtabs, maintenance_info_line_tables): Use
	objfile_compunits.
	* objfiles.c (objfile_relocate1): Use objfile_compunits.
This commit is contained in:
Tom Tromey
2018-11-24 09:00:42 -07:00
parent 5325b9bf1e
commit 592553c469
12 changed files with 82 additions and 73 deletions

View File

@ -5605,7 +5605,6 @@ add_nonlocal_symbols (struct obstack *obstackp,
const lookup_name_info &lookup_name,
domain_enum domain, int global)
{
struct compunit_symtab *cu;
struct match_data data;
memset (&data, 0, sizeof data);
@ -5630,7 +5629,7 @@ add_nonlocal_symbols (struct obstack *obstackp,
symbol_name_match_type::FULL,
compare_names);
ALL_OBJFILE_COMPUNITS (objfile, cu)
for (compunit_symtab *cu : objfile_compunits (objfile))
{
const struct block *global_block
= BLOCKVECTOR_BLOCK (COMPUNIT_BLOCKVECTOR (cu), GLOBAL_BLOCK);
@ -6391,7 +6390,6 @@ ada_collect_symbol_completion_matches (completion_tracker &tracker,
enum type_code code)
{
struct symbol *sym;
struct compunit_symtab *s;
const struct block *b, *surrounding_static_block = 0;
struct block_iterator iter;
@ -13551,7 +13549,6 @@ ada_add_global_exceptions (compiled_regex *preg,
std::vector<ada_exc_info> *exceptions)
{
struct objfile *objfile;
struct compunit_symtab *s;
/* In Ada, the symbol "search name" is a linkage name, whereas the
regular expression used to do the matching refers to the natural