https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48200

--- Comment #19 from Xi Ruoyao <ryxi at stu dot xidian.edu.cn> ---
I think the best result would be like FMV, for e.g.

int foo(void) __attribute__((symver("@1.1")))
{
  return 0;
}

int foo(void) __attribute__((symver("@@1.2")))
{
  return 1;
}

Would produce two symbols "foo.symver.1.1" and "foo.symver.1.2", and

.symver foo.symver.1.1 foo@1.1
.symver foo.symver.1.2 foo@@1.2

And we can also use

int foo(void) __attribute__((symver("@1.0"), alias("foo_old")));

But this seems difficult in C FE, it tends to complain the "redefine" of foo -
note that FMV is still only for C++ until now.

Reply via email to