aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2006-10-17 20:52:32 +0000
committerDaniel Jacobowitz <drow@false.org>2006-10-17 20:52:32 +0000
commit79d4c408c4bc1cac820a19fa1a2987bfc66cda3a (patch)
tree18c3640a61429f450b2b59dd8f97d83c994ceb7a /gdb
parent94277a38987e6809e7a80208ebb1f77cc2c17d46 (diff)
downloadgdb-79d4c408c4bc1cac820a19fa1a2987bfc66cda3a.zip
gdb-79d4c408c4bc1cac820a19fa1a2987bfc66cda3a.tar.gz
gdb-79d4c408c4bc1cac820a19fa1a2987bfc66cda3a.tar.bz2
* solib-svr4.c (LM_ADDR_CHECK): Suggest shared library mismatch.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/solib-svr4.c10
2 files changed, 11 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index aac9f67..ae313c2 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
+ * solib-svr4.c (LM_ADDR_CHECK): Suggest shared library mismatch.
+
+2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
+
* Makefile.in (symtab.o): Update.
* symtab.h (matching_bfd_section): New prototype.
* symtab.c (matching_bfd_section): New.
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
index 89fd81a..9637db9 100644
--- a/gdb/solib-svr4.c
+++ b/gdb/solib-svr4.c
@@ -187,9 +187,6 @@ LM_ADDR_CHECK (struct so_list *so, bfd *abfd)
if (dynaddr + l_addr != l_dynaddr)
{
- warning (_(".dynamic section for \"%s\" "
- "is not at the expected address"), so->so_name);
-
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
{
Elf_Internal_Ehdr *ehdr = elf_tdata (abfd)->elf_header;
@@ -218,9 +215,16 @@ LM_ADDR_CHECK (struct so_list *so, bfd *abfd)
if ((l_addr & align) == 0 && ((dynaddr - l_dynaddr) & align) == 0)
{
l_addr = l_dynaddr - dynaddr;
+
+ warning (_(".dynamic section for \"%s\" "
+ "is not at the expected address"), so->so_name);
warning (_("difference appears to be caused by prelink, "
"adjusting expectations"));
}
+ else
+ warning (_(".dynamic section for \"%s\" "
+ "is not at the expected address "
+ "(wrong library or version mismatch?)"), so->so_name);
}
set_addr: