[PATCH 3/3] Introduce a separate debug objfile iterator
Tom Tromey
tom@tromey.com
Wed May 1 18:30:00 GMT 2019
Sandra> FYI, this series of patches has broken builds with older versions of
Sandra> GCC (we've got 5.2.1 installed on our build system here). Multiple
Sandra> failures like:
Tom> I think that's a bug in that version of gcc, but gdb has routinely
Tom> worked around it in the past.
[...]
Tom> If you can send me a full list, I can send you a patch to test.
I did a grep and came up with the appended.
If you try it, and it works, I will check it in.
thanks,
Tom
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 1a566635b2d..2b4445ee185 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -12483,7 +12483,7 @@ create_excep_cond_exprs (struct ada_catchpoint *c,
because the expression may hold the addresses of multiple symbols
in some cases. */
std::multimap<program_space *, struct bp_location *> loc_map;
- for (struct bp_location *bl = c->loc; bl != NULL; bl = bl->next)
+ for (bp_location *bl = c->loc; bl != NULL; bl = bl->next)
loc_map.emplace (bl->pspace, bl);
scoped_restore_current_program_space save_pspace;
diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c
index 8282ef27e61..e3368ce6471 100644
--- a/gdb/darwin-nat.c
+++ b/gdb/darwin-nat.c
@@ -1706,7 +1706,7 @@ darwin_attach_pid (struct inferior *inf)
static struct thread_info *
thread_info_from_private_thread_info (darwin_thread_info *pti)
{
- for (struct thread_info *it : all_threads ())
+ for (thread_info *it : all_threads ())
{
darwin_thread_info *iter_pti = get_darwin_thread_info (it);
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index b0bdecf96fc..b5ea9e3cc0a 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -15962,7 +15962,7 @@ handle_struct_member_die (struct die_info *child_die, struct type *type,
field for our sole member child. */
struct attribute *discr = dwarf2_attr (child_die, DW_AT_discr_value, cu);
- for (struct die_info *variant_child = child_die->child;
+ for (die_info *variant_child = child_die->child;
variant_child != NULL;
variant_child = sibling_die (variant_child))
{
diff --git a/gdb/minsyms.c b/gdb/minsyms.c
index 8037329a862..9d29d880aab 100644
--- a/gdb/minsyms.c
+++ b/gdb/minsyms.c
@@ -721,7 +721,7 @@ lookup_minimal_symbol_by_pc_section (CORE_ADDR pc_in, struct obj_section *sectio
gdb_assert (section != NULL);
- for (struct objfile *objfile : section->objfile->separate_debug_objfiles ())
+ for (objfile *objfile : section->objfile->separate_debug_objfiles ())
{
CORE_ADDR pc = pc_in;
diff --git a/gdb/objfiles.c b/gdb/objfiles.c
index 1b0ea29980d..30823c2d889 100644
--- a/gdb/objfiles.c
+++ b/gdb/objfiles.c
@@ -864,7 +864,7 @@ objfile_relocate (struct objfile *objfile,
changed |= objfile_relocate1 (objfile, new_offsets);
- for (struct objfile *debug_objfile : objfile->separate_debug_objfiles ())
+ for (::objfile *debug_objfile : objfile->separate_debug_objfiles ())
{
if (debug_objfile == objfile)
continue;
@@ -919,7 +919,7 @@ objfile_rebase (struct objfile *objfile, CORE_ADDR slide)
{
int changed = 0;
- for (struct objfile *debug_objfile : objfile->separate_debug_objfiles ())
+ for (::objfile *debug_objfile : objfile->separate_debug_objfiles ())
changed |= objfile_rebase1 (debug_objfile, slide);
/* Relocate breakpoints as necessary, after things are relocated. */
@@ -960,7 +960,7 @@ objfile_has_full_symbols (struct objfile *objfile)
int
objfile_has_symbols (struct objfile *objfile)
{
- for (struct objfile *o : objfile->separate_debug_objfiles ())
+ for (::objfile *o : objfile->separate_debug_objfiles ())
if (objfile_has_partial_symbols (o) || objfile_has_full_symbols (o))
return 1;
return 0;
diff --git a/gdb/ser-tcp.c b/gdb/ser-tcp.c
index 039b0432231..6ba95107918 100644
--- a/gdb/ser-tcp.c
+++ b/gdb/ser-tcp.c
@@ -323,7 +323,7 @@ net_open (struct serial *scb, const char *name)
{
got_connrefused = false;
- for (struct addrinfo *iter = ainfo; iter != NULL; iter = iter->ai_next)
+ for (addrinfo *iter = ainfo; iter != NULL; iter = iter->ai_next)
{
/* Iterate over the list of possible addresses to connect
to. For each, we'll try to connect and see if it
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 16e641a830b..0e1f7ead294 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -2246,7 +2246,7 @@ lookup_global_symbol_from_objfile (struct objfile *main_objfile,
const char *name,
const domain_enum domain)
{
- for (struct objfile *objfile : main_objfile->separate_debug_objfiles ())
+ for (objfile *objfile : main_objfile->separate_debug_objfiles ())
{
struct block_symbol result
= lookup_symbol_in_objfile (objfile, GLOBAL_BLOCK, name, domain);
@@ -2333,7 +2333,7 @@ lookup_symbol_in_objfile_from_linkage_name (struct objfile *objfile,
else
main_objfile = objfile;
- for (struct objfile *cur_objfile : main_objfile->separate_debug_objfiles ())
+ for (::objfile *cur_objfile : main_objfile->separate_debug_objfiles ())
{
struct block_symbol result;
More information about the Gdb-patches
mailing list