https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65780
Alan Modra <amodra at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2015-04-16 CC| |amodra at gmail dot com Ever confirmed|0 |1 --- Comment #4 from Alan Modra <amodra at gmail dot com> --- optopt is common, and from a linker perspective I believe the correct resolution of a common symbol in the executable and a strong definition in a shared library, is the shared library symbol. Therefore the change to binds_local_p is wrong. What's going on here is that HJ has made changes for x86 to always copy variables defined in a shared library into the executable's .dynbss if referenced by the executable. This is necessary to support non-PIC without text relocations, but isn't necessary for PIC. It is certainly possible to do this for PIC but I think only x86 does so.