diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/pdp11.c | 9 |
2 files changed, 10 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 0a34054..011a49d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2020-06-05 Nick Clifton <nickc@redhat.com> + + * pdp11.c (aout_link_add_symbols): Fix use before initialisation + bug. + 2020-06-05 Nelson Chu <nelson.chu@sifive.com> * elfnn-riscv.c (riscv_merge_attributes): Add new boolean diff --git a/bfd/pdp11.c b/bfd/pdp11.c index 2eca67c..fecaa21 100644 --- a/bfd/pdp11.c +++ b/bfd/pdp11.c @@ -2925,14 +2925,15 @@ aout_link_add_symbols (bfd *abfd, struct bfd_link_info *info) type = H_GET_8 (abfd, p->e_type); - /* Ignore debugging symbols. */ - if (is_stab(type, name)) - continue; - /* PR 19629: Corrupt binaries can contain illegal string offsets. */ if (GET_WORD (abfd, p->e_strx) >= obj_aout_external_string_size (abfd)) return FALSE; name = strings + GET_WORD (abfd, p->e_strx); + + /* Ignore debugging symbols. */ + if (is_stab (type, name)) + continue; + value = GET_WORD (abfd, p->e_value); flags = BSF_GLOBAL; string = NULL; |