https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48200
--- Comment #43 from Mark Wielaard <mark at gcc dot gnu.org> --- It looks there is now some support for a symver function attribute. But it only accepts the single and double @ forms. This makes things a little awkward when using a symbol foo itself for foo@@DEFAULT_VERSION. It causes the (non-versioned) foo symbol to still appear in the object, which doesn't work very nicely when combined with linker version scripts. For elfutils I had to workaround that by adding foo also to a non-exported version section, so that the assembler and linker didn't both try to create a default version for foo: https://sourceware.org/pipermail/elfutils-devel/2020q2/002609.html It works, but feels like a hack. Please also support the @@@ symver variant.