This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [v3] symbol versioning fixups


Jakub Jelinek wrote:

>[snip]
>  
>
>Now, without asm renames for eq, you end up basically with:
>int foo () { return 0; }
>extern int __old_foo () __attribute__((alias ("foo")));
>extern int __new_foo () __attribute__((alias ("foo")));
>asm (".symver __old_foo, foo@GLIBCXX_3.4");
>asm (".symver __new_foo, foo@@GLIBCXX_3.4.5");
>
>but this is something most GNU linkers either crash on, or do
>weird unexpected things, because the foo symbol is present
>both as versioned (with 2 versions) and unversioned in the
>same object.
>  
>
Thanks a lot again Jakub. I believe your explanations filled the most
important remaining gaps in my understanding of those matters.

Paolo.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]