ARM attribute merging oddity

Daniel Jacobowitz drow@false.org
Thu Mar 19 20:12:00 GMT 2009


>From the top of elf32_arm_merge_eabi_attributes:

  if (!elf_known_obj_attributes_proc (obfd)[0].i)
    {
      /* This is the first object.  Copy the attributes.  */
      _bfd_elf_copy_obj_attributes (ibfd, obfd);

      /* Use the Tag_null value to indicate the attributes have been
         initialized.  */
      elf_known_obj_attributes_proc (obfd)[0].i = 1;

      return TRUE;
    }

This means that we don't warn about unknown attributes if they're in
the very first file, and if every file has the unknown attribute with
the same value - or does not have it at all - then the output file
will include it.  But if the first file doesn't have it and a later
file does, it'll be warned about and dropped.

Do we need to run through the full merging process for the first
file too?

-- 
Daniel Jacobowitz
CodeSourcery



More information about the Binutils mailing list