From: Alan Modra Date: Mon, 3 Oct 2005 03:41:56 +0000 (+0000) Subject: * elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=65a7a66f3a02426753f47fe598c454d575d7f204;p=binutils-gdb.git * elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on synthetic syms. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 598b950f9b8..683a88bd630 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2005-10-03 Alan Modra + + * elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on + synthetic syms. + 2005-09-30 H.J. Lu * Makefile.am: Run "make dep-am". diff --git a/bfd/elf.c b/bfd/elf.c index fe4c8fdced8..b1b73a02f4c 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -8270,6 +8270,10 @@ _bfd_elf_get_synthetic_symtab (bfd *abfd, continue; *s = **p->sym_ptr_ptr; + /* Undefined syms won't have BSF_LOCAL or BSF_GLOBAL set. Since + we are defining a symbol, ensure one of them is set. */ + if ((s->flags & BSF_LOCAL) == 0) + s->flags |= BSF_GLOBAL; s->section = plt; s->value = addr - plt->vma; s->name = names;