On Mon, 4 Jun 2012, Richard Guenther wrote: > On Fri, 1 Jun 2012, Jason Merrill wrote: > > > Or use your first patch, and decide that we don't care about the linkage > > name > > of unreachable types. What types are affected by this, anyway?
So like the following. Bootstrapped and tested on x86_64-unknown-linux-gnu. Thanks, Richard. 2012-06-04 Richard Guenther <rguent...@suse.de> PR middle-end/53471 * dwarf2out.c (dwarf2out_finish): If generating LTO do not create new assembler names. Index: gcc/dwarf2out.c =================================================================== --- gcc/dwarf2out.c (revision 188168) +++ gcc/dwarf2out.c (working copy) @@ -22158,7 +22158,8 @@ dwarf2out_finish (const char *filename) for (node = deferred_asm_name; node; node = node->next) { tree decl = node->created_for; - if (DECL_ASSEMBLER_NAME (decl) != DECL_NAME (decl)) + if ((!flag_generate_lto || DECL_ASSEMBLER_NAME_SET_P (decl)) + && DECL_ASSEMBLER_NAME (decl) != DECL_NAME (decl)) { add_linkage_attr (node->die, decl); move_linkage_attr (node->die);