diff options
author | Ian Lance Taylor <ian@airs.com> | 1997-04-02 22:17:35 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1997-04-02 22:17:35 +0000 |
commit | f74e2365ddbb9298ddf861efd69f4383a857dc90 (patch) | |
tree | 34930b594cd9b57d21993d25dd668912f7d7e4e9 /bfd | |
parent | d73607c5b5ffcfe3f06ae0ffe6669c96c9f908b9 (diff) | |
download | gdb-f74e2365ddbb9298ddf861efd69f4383a857dc90.zip gdb-f74e2365ddbb9298ddf861efd69f4383a857dc90.tar.gz gdb-f74e2365ddbb9298ddf861efd69f4383a857dc90.tar.bz2 |
* elflink.h (elf_link_add_object_symbols): When there is a size
change, use the larger size. From H.J. Lu <hjl@gnu.ai.mit.edu>.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 3 | ||||
-rw-r--r-- | bfd/elflink.h | 14 |
2 files changed, 12 insertions, 5 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c566510..b79c57c 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -6,6 +6,9 @@ Wed Apr 2 16:19:41 1997 Mike Meissner <meissner@cygnus.com> Wed Apr 2 10:49:07 1997 Ian Lance Taylor <ian@cygnus.com> + * elflink.h (elf_link_add_object_symbols): When there is a size + change, use the larger size. From H.J. Lu <hjl@gnu.ai.mit.edu>. + * elf-m10200.c: Rename from elf32-mn10200.c. * elf-m10300.c: Rename from elf32-mn10300.c. * cpu-m10200.c: Rename from cpu-mn10200.c diff --git a/bfd/elflink.h b/bfd/elflink.h index dcb1a8b..699b015 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -998,11 +998,15 @@ elf_link_add_object_symbols (abfd, info) { if (h->size != 0 && h->size != sym.st_size && ! size_change_ok) (*_bfd_error_handler) - ("Warning: size of symbol `%s' changed from %lu to %lu in %s", - name, (unsigned long) h->size, (unsigned long) sym.st_size, - bfd_get_filename (abfd)); - - h->size = sym.st_size; + ("Warning: size of symbol `%s' was %lu, but in %s is %lu; using %lu", + name, (unsigned long) h->size, + bfd_get_filename (abfd), (unsigned long) sym.st_size, + (h->size < sym.st_size + ? (unsigned long) sym.st_size + : (unsigned long) h->size)); + + if (h->size < sym.st_size) + h->size = sym.st_size; } if (ELF_ST_TYPE (sym.st_info) != STT_NOTYPE && (definition || h->type == STT_NOTYPE)) |