diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1bce6b3fbd..688010902a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +2000-08-27 Elena Zannoni + + * pa64solib.c (pa64_solib_load_symbols): Don't use ANOFFSET as an + lvalue. + * xcoffread.c (xcoff_symfile_offsets): Ditto + * somsolib.c (som_solib_section_offsets): Ditto. + * somread.c (som_symfile_offsets): Ditto. + * rs6000-nat.c (vmap_symtab): Ditto. + * remote-vx.c (vx_add_symbols): Ditto. + * remote-os9k.c (rombug_wait): Ditto. + 2000-08-27 Mark Kettenis * gregset.h: Protect against multiple inclusion. Remove some diff --git a/gdb/pa64solib.c b/gdb/pa64solib.c index 459302ae21..480802df9e 100644 --- a/gdb/pa64solib.c +++ b/gdb/pa64solib.c @@ -319,9 +319,9 @@ pa64_solib_load_symbols (struct so_list *so, char *name, int from_tty, return; } - ANOFFSET (so->objfile->section_offsets, SECT_OFF_TEXT (so->objfile)) + (so->objfile->section_offsets)->offsets[SECT_OFF_TEXT (so->objfile)] = so->pa64_solib_desc.text_base; - ANOFFSET (so->objfile->section_offsets, SECT_OFF_DATA (so->objfile)) + (so->objfile->section_offsets)->offsets[SECT_OFF_DATA (so->objfile)] = so->pa64_solib_desc.data_base; /* Relocate all the sections based on where they got loaded. */ diff --git a/gdb/remote-os9k.c b/gdb/remote-os9k.c index 3e1a1eedb0..53ca13d276 100644 --- a/gdb/remote-os9k.c +++ b/gdb/remote-os9k.c @@ -493,8 +493,8 @@ rombug_wait (int pid, struct target_waitstatus *status) new_symfile_objfile (obj_sec->objfile, 1, 0); offs = (struct section_offsets *) alloca (SIZEOF_SECTION_OFFSETS); memcpy (offs, symfile_objfile->section_offsets, SIZEOF_SECTION_OFFSETS); - ANOFFSET (offs, SECT_OFF_DATA (symfile_objfile)) = addr; - ANOFFSET (offs, SECT_OFF_BSS (symfile_objfile)) = addr; + offs->offsets[SECT_OFF_DATA (symfile_objfile)] = addr; + offs->offsets[SECT_OFF_BSS (symfile_objfile)] = addr; objfile_relocate (symfile_objfile, offs); } diff --git a/gdb/remote-vx.c b/gdb/remote-vx.c index b66bc4626a..36066607dd 100644 --- a/gdb/remote-vx.c +++ b/gdb/remote-vx.c @@ -685,9 +685,9 @@ vx_add_symbols (char *name, int from_tty, CORE_ADDR text_addr, bfd_map_over_sections (objfile->obfd, find_sect, &ss); /* Both COFF and b.out frontends use these SECT_OFF_* values. */ - ANOFFSET (offs, SECT_OFF_TEXT (objfile)) = text_addr - ss.text_start; - ANOFFSET (offs, SECT_OFF_DATA (objfile)) = data_addr - ss.data_start; - ANOFFSET (offs, SECT_OFF_BSS (objfile)) = bss_addr - ss.bss_start; + offs->offsets[SECT_OFF_TEXT (objfile)] = text_addr - ss.text_start; + offs->offsets[SECT_OFF_DATA (objfile)] = data_addr - ss.data_start; + offs->offsets[SECT_OFF_BSS (objfile)] = bss_addr - ss.bss_start; objfile_relocate (objfile, offs); } diff --git a/gdb/rs6000-nat.c b/gdb/rs6000-nat.c index 0bf1e32da0..f9a0b145ec 100644 --- a/gdb/rs6000-nat.c +++ b/gdb/rs6000-nat.c @@ -609,13 +609,13 @@ vmap_symtab (struct vmap *vp) new_offsets = (struct section_offsets *) alloca (SIZEOF_SECTION_OFFSETS); for (i = 0; i < objfile->num_sections; ++i) - ANOFFSET (new_offsets, i) = ANOFFSET (objfile->section_offsets, i); + new_offsets->offsets[i] = ANOFFSET (objfile->section_offsets, i); /* The symbols in the object file are linked to the VMA of the section, relocate them VMA relative. */ - ANOFFSET (new_offsets, SECT_OFF_TEXT (objfile)) = vp->tstart - vp->tvma; - ANOFFSET (new_offsets, SECT_OFF_DATA (objfile)) = vp->dstart - vp->dvma; - ANOFFSET (new_offsets, SECT_OFF_BSS (objfile)) = vp->dstart - vp->dvma; + new_offsets->offsets[SECT_OFF_TEXT (objfile)] = vp->tstart - vp->tvma; + new_offsets->offsets[SECT_OFF_DATA (objfile)] = vp->dstart - vp->dvma; + new_offsets->offsets[SECT_OFF_BSS (objfile)] = vp->dstart - vp->dvma; objfile_relocate (objfile, new_offsets); } diff --git a/gdb/somread.c b/gdb/somread.c index 92d5492162..4605c26e4a 100644 --- a/gdb/somread.c +++ b/gdb/somread.c @@ -477,7 +477,7 @@ som_symfile_offsets (struct objfile *objfile, struct section_addr_info *addrs) text_addr = addrs->other[i].addr; for (i = 0; i < SECT_OFF_MAX; i++) - ANOFFSET (objfile->section_offsets, i) = text_addr; + (objfile->section_offsets)->offsets[i] = text_addr; } } diff --git a/gdb/somsolib.c b/gdb/somsolib.c index fa65666d01..892cbc9bea 100644 --- a/gdb/somsolib.c +++ b/gdb/somsolib.c @@ -1378,10 +1378,10 @@ som_solib_section_offsets (struct objfile *objfile, asection *private_section; /* The text offset is easy. */ - ANOFFSET (offsets, SECT_OFF_TEXT (objfile)) + offsets->offsets[SECT_OFF_TEXT (objfile)] = (so_list->som_solib.text_addr - so_list->som_solib.text_link_addr); - ANOFFSET (offsets, SECT_OFF_RODATA (objfile)) + offsets->offsets[SECT_OFF_RODATA (objfile)] = ANOFFSET (offsets, SECT_OFF_TEXT (objfile)); /* We should look at presumed_dp in the SOM header, but @@ -1391,13 +1391,13 @@ som_solib_section_offsets (struct objfile *objfile, if (!private_section) { warning ("Unable to find $PRIVATE$ in shared library!"); - ANOFFSET (offsets, SECT_OFF_DATA (objfile)) = 0; - ANOFFSET (offsets, SECT_OFF_BSS (objfile)) = 0; + offsets->offsets[SECT_OFF_DATA (objfile)] = 0; + offsets->offsets[SECT_OFF_BSS (objfile)] = 0; return 1; } - ANOFFSET (offsets, SECT_OFF_DATA (objfile)) + offsets->offsets[SECT_OFF_DATA (objfile)] = (so_list->som_solib.data_start - private_section->vma); - ANOFFSET (offsets, SECT_OFF_BSS (objfile)) + offsets->offsets[SECT_OFF_BSS (objfile)] = ANOFFSET (offsets, SECT_OFF_DATA (objfile)); return 1; } diff --git a/gdb/xcoffread.c b/gdb/xcoffread.c index 47d44a5261..ed55c74d27 100644 --- a/gdb/xcoffread.c +++ b/gdb/xcoffread.c @@ -2744,7 +2744,7 @@ xcoff_symfile_offsets (struct objfile *objfile, struct section_addr_info *addrs) sensibly), so just ignore the addr parameter and use 0. rs6000-nat.c will set the correct section offsets via objfile_relocate. */ - ANOFFSET (objfile->section_offsets, i) = 0; + (objfile->section_offsets)->offsets[i] = 0; } }