From: Alan Modra Date: Tue, 30 Mar 2021 02:33:30 +0000 (+1030) Subject: asan: linker.c:2294:8: runtime error: load of value 253 X-Git-Tag: gdb-11-branchpoint~1209 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d1cbe0076a4b6442793121413a0d3b52ae19727e;p=thirdparty%2Fbinutils-gdb.git asan: linker.c:2294:8: runtime error: load of value 253 Seen after converting bfd_boolean to bool. mmix +FAIL: ld-mmix/zeroehmmo ./ld-new -L/home/alan/src/binutils-gdb/ld/testsuite/ld-mmix -m mmo -Ttext 0xa00 -T /home/alan/src/binutils-gdb/ld/testsuite/ld-mmix/zeroeh.ld -o tmpdir/dump tmpdir/x.o tmpdir/y.o /home/alan/src/binutils-gdb/bfd/linker.c:2294:8: runtime error: load of value 253, which is not a valid value for type '_Bool' * elflink.c (elf_link_add_object_symbols): Don't set h->indx unless is_elf_hash_table. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6d361d56b98..a94223d1d99 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2021-03-30 Alan Modra + + * elflink.c (elf_link_add_object_symbols): Don't set h->indx + unless is_elf_hash_table. + 2021-03-29 Alan Modra * aoutx.h (aout_link_write_symbols): Don't cast boolean expression diff --git a/bfd/elflink.c b/bfd/elflink.c index 6be14e7c333..c7102e691f1 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -4968,13 +4968,13 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info) || h->root.type == bfd_link_hash_warning) h = (struct elf_link_hash_entry *) h->root.u.i.link; + *sym_hash = h; + /* Setting the index to -3 tells elf_link_output_extsym that this symbol is defined in a discarded section. */ - if (discarded) + if (discarded && is_elf_hash_table (htab)) h->indx = -3; - *sym_hash = h; - new_weak = (flags & BSF_WEAK) != 0; if (dynamic && definition