https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91766
Wilco <wilco at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2019-09-17 Ever confirmed|0 |1 --- Comment #8 from Wilco <wilco at gcc dot gnu.org> --- Confirmed btw - the difference is due to HAVE_LD_PIE_COPYRELOC in i386.c: /* For i386, common symbol is local only for non-PIE binaries. For x86-64, common symbol is local only for non-PIE binaries or linker supports copy reloc in PIE binaries. */ static bool ix86_binds_local_p (const_tree exp) { return default_binds_local_p_3 (exp, flag_shlib != 0, true, true, (!flag_pic || (TARGET_64BIT && HAVE_LD_PIE_COPYRELOC != 0))); }