https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99618
Bug ID: 99618 Summary: `.gnu.debuglto_.debug_macro' referenced in section `.gnu.debuglto_.debug_macro' of X defined in discarded section Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: marxin at gcc dot gnu.org, rguenth at gcc dot gnu.org Target Milestone: --- I'm not sure if it's problem at compiler or linker side. Reduced from perf package: $ cat 1.i ; # 1 "/usr/include/bits/wordsize.h" 1 #define __WORDSIZE 64 #define __WORDSIZE_TIME64_COMPAT32 1 $ gcc -flto -ggdb3 -c -fPIC -g 1.i && cp 1.o 2.o && gcc -r -o libperf-in.o [12].o -fuse-ld=bfd `.gnu.debuglto_.debug_macro' referenced in section `.gnu.debuglto_.debug_macro' of /tmp/ccnBoXGI.debug.temp.o: defined in discarded section `.gnu.debuglto_.debug_macro[wm4.wordsize.h.1.b68ef8235bd466c01307f942f7f51e04]' of /tmp/ccnBoXGI.debug.temp.o collect2: error: ld returned 1 exit status While ld.gold is fine: $ gcc -flto -ggdb3 -c -fPIC -g 1.i && cp 1.o 2.o && gcc -r -o libperf-in.o [12].o -fuse-ld=gold