From af54f0eb968ba8cb3862fd3cad097a3f3363467b Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 5 Jun 2017 11:02:42 +0930 Subject: [PATCH] PR21529, internal error in linker.c PR 21529 * linker.c (_bfd_generic_link_output_symbols): Handle BSF_GNU_UNIQUE. --- bfd/ChangeLog | 5 +++++ bfd/linker.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 27a1e8c..f4a6afa 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2017-06-05 Alan Modra + + PR 21529 + * linker.c (_bfd_generic_link_output_symbols): Handle BSF_GNU_UNIQUE. + 2017-06-01 John Baldwin * elf.c (elfcore_grok_freebsd_psinfo): Use ELF header class to diff --git a/bfd/linker.c b/bfd/linker.c index 9861259..f94d2f8 100644 --- a/bfd/linker.c +++ b/bfd/linker.c @@ -2091,7 +2091,7 @@ _bfd_generic_link_output_symbols (bfd *output_bfd, && bfd_hash_lookup (info->keep_hash, bfd_asymbol_name (sym), FALSE, FALSE) == NULL)) output = FALSE; - else if ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0) + else if ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0) { /* If this symbol is marked as occurring now, rather than at the end, output it now. This is used for -- 2.7.4