aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-05-17 13:02:18 +0000
committerAlan Modra <amodra@gmail.com>2011-05-17 13:02:18 +0000
commit16d96b5b8fc6ea4aeccccfd805a7049438ad1f6b (patch)
treea7d64dee0a9e5322558b8fbd450a04b715f4d1f7 /bfd
parentcd3da28e23c6fe0f229cd09975b28c6b3b1d8779 (diff)
downloadgdb-16d96b5b8fc6ea4aeccccfd805a7049438ad1f6b.zip
gdb-16d96b5b8fc6ea4aeccccfd805a7049438ad1f6b.tar.gz
gdb-16d96b5b8fc6ea4aeccccfd805a7049438ad1f6b.tar.bz2
PR ld/12760
include/ * bfdlink.h (struct bfd_link_callbacks <notice>): Add "flags" and "string" param. bfd/ * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Adjust "notice" call. * elflink.c (elf_link_add_object_symbols): Likewise. * linker.c (_bfd_generic_link_add_one_symbol): Likewise. ld/ * ldmain.c (notice): Add "flags" and "string" param. * plugin.c (plugin_notice): Likewise. Handle indirect, warning and constructor syms.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/coff-aux.c3
-rw-r--r--bfd/elflink.c6
-rw-r--r--bfd/linker.c3
4 files changed, 14 insertions, 5 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 8733a69..a5355b5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2011-05-17 Alan Modra <amodra@gmail.com>
+
+ PR ld/12760
+ * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Adjust "notice" call.
+ * elflink.c (elf_link_add_object_symbols): Likewise.
+ * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
2011-05-16 Alan Modra <amodra@gmail.com>
* linker.c (_bfd_generic_link_add_one_symbol): Don't init u.undef.weak.
diff --git a/bfd/coff-aux.c b/bfd/coff-aux.c
index 20a680c..84805a8 100644
--- a/bfd/coff-aux.c
+++ b/bfd/coff-aux.c
@@ -105,7 +105,8 @@ coff_m68k_aux_link_add_one_symbol (info, abfd, name, flags, section, value,
&& (bfd_hash_lookup (info->notice_hash, name, FALSE, FALSE)
!= (struct bfd_hash_entry *) NULL))
{
- if (! (*info->callbacks->notice) (info, h, abfd, section, value))
+ if (! (*info->callbacks->notice) (info, h, abfd, section, value,
+ flags, string))
return FALSE;
}
diff --git a/bfd/elflink.c b/bfd/elflink.c
index e4f728d..b08b150 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -3814,7 +3814,7 @@ error_free_dyn:
/* Make a special call to the linker "notice" function to
tell it that we are about to handle an as-needed lib. */
if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
- notice_as_needed))
+ notice_as_needed, 0, NULL))
goto error_free_vers;
/* Clone the symbol table and sym hashes. Remember some
@@ -4561,7 +4561,7 @@ error_free_dyn:
/* Make a special call to the linker "notice" function to
tell it that symbols added for crefs may need to be removed. */
if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
- notice_not_needed))
+ notice_not_needed, 0, NULL))
goto error_free_vers;
free (old_tab);
@@ -4575,7 +4575,7 @@ error_free_dyn:
if (old_tab != NULL)
{
if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
- notice_needed))
+ notice_needed, 0, NULL))
goto error_free_vers;
free (old_tab);
old_tab = NULL;
diff --git a/bfd/linker.c b/bfd/linker.c
index d92a9d8..90ab63e 100644
--- a/bfd/linker.c
+++ b/bfd/linker.c
@@ -1607,7 +1607,8 @@ _bfd_generic_link_add_one_symbol (struct bfd_link_info *info,
|| (info->notice_hash != NULL
&& bfd_hash_lookup (info->notice_hash, name, FALSE, FALSE) != NULL))
{
- if (! (*info->callbacks->notice) (info, h, abfd, section, value))
+ if (! (*info->callbacks->notice) (info, h,
+ abfd, section, value, flags, string))
return FALSE;
}