This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Fix false warning: section .gnu.liblist not found in ... [rediffed]
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 8 Mar 2010 11:23:17 +0400
- Subject: Re: [patch] Fix false warning: section .gnu.liblist not found in ... [rediffed]
- References: <20100213224929.GB27252@host0.dyn.jankratochvil.net> <20100228231418.GA26404@host0.dyn.jankratochvil.net>
> 2010-03-01 Jan Kratochvil <jan.kratochvil@redhat.com>
>
> * symfile.c (addr_info_make_relative): New variable sect_name, use it.
> Do not warn on ".gnu.liblist" and ".gnu.conflict".
This looks reasonable. We can go with that at least for now, but I am
wondering whether we might want to consider using a complaint instead
if more sections like these keep popping up.
I have a small request:
> + /* These two sections are intentionally loaded into memory from
> + the DYNAMIC segment and so they have both SEC_ALLOC and SEC_LOAD
> + set in the main executable (not in the library files). They
> + are not present in the separate debug info file, though. */
> +
> + if (!(strcmp (sect_name, ".gnu.liblist") == 0
> + || strcmp (sect_name, ".gnu.conflict") == 0))
> + warning (_("section %s not found in %s"), sect_name,
> + bfd_get_filename (abfd));
> +
I was a little confused at first by the comment, because it immediately
mentioned "these two sections" without giving an idea of what these
sections were. May I suggest maybe something more detailed like so?
/* This section does not exist in ABFD, which is normally
unexpected and we want to issue a warning.
However, the ELF prelinker does create a couple of sections
(".gnu.liblist" and ".gnu.conflict") which are marked as
loadable (they are loaded in memory from the DYNAMIC segment)
and yet are not present in separate debug info files. This
is fine, and should not cause a warning. */
--
Joel