http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56557
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-03-11 10:05:39 UTC --- Note that this behavior (tons of undesirable SHN_UNDEF symbols in binaries linked with -flto) seems to be specific to ld.bfd, with gold the #c0 testcase links just fine, and the SHN_UNDEF symbols are the expected ones. I've also tried latest CVS binutils (both gold and ld.bfd) and the behavior is the same, gold works here, ld.bfd broken. So perhaps this is a binutils bug instead?