https://sourceware.org/bugzilla/show_bug.cgi?id=27303
Cary Coutant <ccoutant at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ccoutant at gmail dot com --- Comment #2 from Cary Coutant <ccoutant at gmail dot com> --- I haven't yet managed to get a clean build of GCC 11 to try to reproduce, but I do have a suspicion. Gold reverses the .ctors entries in .init_array, after applying relocations, but it does not attempt to reverse any dynamic relocations. That's normally not an issue, as we shouldn't have dynamic relocations for entries in the .ctors sections, but there might be something forcing the linker to create them. (The clue is that you had to start the process in gdb before printing the .init_array entries.) Please attach the output of: readelf -rsW initpri3.o readelf -rW initpri3a # (or ig from your example) I'm tempted to remove the whole --ctors-in-init-array option and this test case. GCC hasn't used the .ctors section in years now, as far as I know. But I'd like to understand what's causing this failure. If the cause is dynamic relocations, I'd like to understand what's causing the linker to generate them. -- You are receiving this mail because: You are on the CC list for the bug.