[PATCH] powerpc: Remove unintended __longjmp export
Tulio Magno Quites Machado Filho
tuliom@linux.vnet.ibm.com
Mon Nov 28 13:05:00 GMT 2016
Florian Weimer <fweimer@redhat.com> writes:
> Due to an accident, we export __longjmp under a public symbol version
> for the powerpc32/fpu configuration.
>
> __longjmp is declared as hidden for internal use. This means that any
> reference to this symbol (of which there aren't any right now in
> libc.so) will cause the symbol to turn unexported. The reason is that
> the linker does not distinguish between hidden definitions and
> references. GCC emits a .hidden directive in the __longjmp-referencing
> translation unit, and this kills the .symver-based export.
>
> I propose the removal of the __longjmp export as the simplest fix.
> __longjmp is in the implementation namespace and is not used in a public
> header. As a result, nothing out there should reference it.
>
> If this is not acceptable, I'll come up with different approach to
> address this. But I prefer to address this issue in this way.
>
> Tested on a powerpc32/fpu configuration with no regressions.
Makes sense to me too.
--
Tulio Magno
More information about the Libc-alpha
mailing list