http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50090
Bug #: 50090
Summary: ARM EABI symbols in libgcc.a have default visibility
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: [email protected]
ReportedBy: [email protected]
EABI functions like __aeabi_f2ulz are defined as aliases
of standard libgcc functions like __fixunssfdi. In libgcc.a,
the standard function gets the correct hidden visibility,
but the alias retains default visibility. This means that
DSOs linked against libgcc.a may end up exporting the
libgcc.a definition of __aeabi_f2ulz.
The bug is that bpabi-lib.h uses an asm statement to define
an alias, so the standard ways of forcing hidden visibility
at the C level have no effect.