From c5685873361e9a9eca8245f155eb8ef69cf1706d Mon Sep 17 00:00:00 2001 From: amodra Date: Tue, 9 Aug 2011 09:27:34 +0000 Subject: [PATCH] PR ld/13066 PR ld/12762 * plugin.c (add_symbols): Revert 2011-08-05. --- ld/ChangeLog | 5 +++++ ld/plugin.c | 11 +++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index bde12e5726..e3545148f8 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2011-08-09 Alan Modra + + PR ld/13066 + * plugin.c (add_symbols): Revert 2011-08-05. + 2011-08-06 Kai Tietz * scripttempl/pep.sc: Add .debug_macro section. diff --git a/ld/plugin.c b/ld/plugin.c index 5ba1fca845..9baeb468a9 100644 --- a/ld/plugin.c +++ b/ld/plugin.c @@ -380,11 +380,11 @@ add_symbols (void *handle, int nsyms, const struct ld_plugin_symbol *syms) { asymbol **symptrs; bfd *abfd = handle; - int n, k; + int n; ASSERT (called_plugin); symptrs = xmalloc (nsyms * sizeof *symptrs); - for (n = 0, k = 0; n < nsyms; n++) + for (n = 0; n < nsyms; n++) { enum ld_plugin_status rv; asymbol *bfdsym; @@ -394,16 +394,15 @@ add_symbols (void *handle, int nsyms, const struct ld_plugin_symbol *syms) struct already_linked linked; linked.comdat_key = xstrdup (syms[n].comdat_key); linked.u.abfd = abfd; - if (bfd_section_already_linked (abfd, &linked, &link_info)) - continue; + bfd_section_already_linked (abfd, &linked, &link_info); } bfdsym = bfd_make_empty_symbol (abfd); - symptrs[k++] = bfdsym; + symptrs[n] = bfdsym; rv = asymbol_from_plugin_symbol (abfd, bfdsym, syms + n); if (rv != LDPS_OK) return rv; } - bfd_set_symtab (abfd, symptrs, k); + bfd_set_symtab (abfd, symptrs, nsyms); return LDPS_OK; } -- 2.11.0