This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
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.