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: unassig...@gcc.gnu.org ReportedBy: rsand...@gcc.gnu.org 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.