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
{
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))