Define __start/__stop symbols when there is only a dynamic def

H.J. Lu
Fri Jan 26 14:04:00 GMT 2018

On Fri, Jan 26, 2018 at 5:19 AM, Nick Clifton <> wrote:
> Hi Alan,
>> This patch fixes a case where a user had a C-representable named
>> section in both the executable and shared libraries, and of course
>> wanted the size of the local section in the executable, not the
>> dynamic section.  It does mean that __start and __stop symbols don't
>> behave exactly like PROVIDEd symbols, but I think that's a reasonable
>> difference particularly since this is the way they used to behave.
> Is this distinction now documented ?  Ie can future users still be
> confused by this behaviour ?
>> Nick, I'd like to apply this to the branch.  I think it should be
>> quite safe.
>>       * elflink.c (bfd_elf_define_start_stop): Override symbols when
>>       they are defined dynamically.
> Fair enough - please apply - although I do also like H.J.'s request
> for a testcase...

There are testcases for:

But they only check __start/__stop symbols are handled correctly.
__size isn't checked.   Let me see if I can extend them to check


More information about the Binutils mailing list