http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51910
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-01-27 20:24:14 UTC --- As can be seen from Jason's example, -frepo option is unfortunately not mandatory on the link line when some objects have been compiled with -frepo. And collect2 seems to work by running the linker, if it succeeded, fine, otherwise look for *.rpo files around, try to parse the error output from the linker, compile something again, link again. So it would need to be done always. Or perhaps tlink.c could somehow always handle all the symbols that demangle the same together if the linker error output contains demangled symbols. Jason, do you think it would be possible?