https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113617
--- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Francois-Xavier Coudert from comment #23) > It's not being passed -shared on darwin: Then that means the shared effective target doesn't work properly on darwin then. It even has hacks for darwin in it though: # Darwin's linker defaults to error on undefined (which makes it look as # if we do not support shared) but we can tell it to allow the symbols used # here to be undefined. set extra_flags "" if { [istarget *-*-darwin\[912\]*] } { set extra_flags "-Wl,-U,_foo,-U,_bar" } ...