https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92855
--- Comment #3 from Thiago Macieira <thiago at kde dot org> ---
The symbol in question is inline, therefore -fvisibility-inlines-hidden should
trigger and cause it to become hidden too.
Testcase showing that GCC will apply that:
#define VISIBILITY(x) __attribute__((visibility(#x)))
namespace N VISIBILITY(default) {
void other();
inline void f()
{
other();
}
void g() { f(); }
}
If you compile this with -fno-inline to cause f() to be emitted, you'll see:
.section .text.N::f(),"axG",@progbits,N::f(),comdat
.p2align 4
.weak N::f()
.hidden N::f()
.type N::f(), @function
N::f():
jmp N::other()
.size N::f(), .-N::f()
See: https://gcc.godbolt.org/z/nW3RbX
So I contend that the symbol should have been hidden and wasn't because of a
bug. Please reconsider.