https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113403
--- Comment #2 from Florian Weimer <fw at gcc dot gnu.org> --- Weak symbols have no meaning for ELF DSOs, so this wouldn't work for libgcc_s on ELF targets. Instead we automatically link against dynamic libgcc_s if certain symbols not in libgcc.a are referenced. Sources built with -ftrampoline-impl=heap -fexceptions can already trigger such a dependency for _Unwind_Resume because it's used in the cleanup handler, for example.