https://sourceware.org/bugzilla/show_bug.cgi?id=18703
--- Comment #7 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Cary Coutant from comment #6)
> >    Another usage of the '.symver' directive is:
> >      .symver NAME, NAME2@@NODENAME
> >    In this case, the symbol NAME must exist and be defined within the
> > file being assembled.  It is similar to NAME2@NODENAME.  The difference
> > is NAME2@@NODENAME will also be used to resolve references to NAME2 by
> > the linker.
> >
> > Linker shouldn't use foo@VERS_1.1 to resolve references to foo.
> 
> Yes, I understand that much. The example given uses:
> 
>    .symver foo, foo@VERS_1.1
> 
> where the original symbol and the versioned symbol both have the same
> name. This produces two symbols in the .o file named "foo":
> 
> 0000000000000000 T foo
> 0000000000000000 T foo@VERS_1.1
> 
> With the version script, gold sees the first of those (plain "foo")
> and makes it the default version (as, I think, it should). The second
> one is just seen as a second declaration, but it's already been marked
> the default.
> 

foo is versioned and only version specified is VERS_1.1, which is not
default version.  It is wrong to create a default foo without being asked
to do so.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to