On Tue, Nov 01, 2016 at 11:34:08PM +0100, Jan-Benedict Glaw wrote: > Hi Jakub! > > Seems this patch caused some breakage when building via > config-list.mk with a recent compiler (ie. with itself) : > > +2016-11-01 Jakub Jelinek <ja...@redhat.com> > + > + * dwarf2out.c (add_name_and_src_coords_attributes): Add > NO_LINKAGE_NAME > + argument, don't call add_linkage_name if it is true. > + (gen_variable_die): For C++ inline static data members, consider the > + initial call when old_die is NULL to be declaration and call > + add_name_and_src_coords_attributes in that case with true as > + NO_LINKAGE_NAME. Add DW_AT_inline attribute if needed. > + (gen_member_die): For C++ inline static data members, emit a > + definition DIE right away in DW_TAG_compile_unit context.
Sorry, fixed thusly, committed as obvious: 2016-11-01 Jakub Jelinek <ja...@redhat.com> * dwarf2out.c (gen_variable_die): Remove again origin_die variable and its initialization. --- gcc/dwarf2out.c (revision 241758) +++ gcc/dwarf2out.c (working copy) @@ -22451,7 +22451,6 @@ gen_variable_die (tree decl, tree origin tree ultimate_origin; dw_die_ref var_die; dw_die_ref old_die = decl ? lookup_decl_die (decl) : NULL; - dw_die_ref origin_die = NULL; bool declaration = (DECL_EXTERNAL (decl_or_origin) || class_or_namespace_scope_p (context_die)); bool specialization_p = false; @@ -22627,7 +22626,7 @@ gen_variable_die (tree decl, tree origin var_die = new_die (DW_TAG_variable, context_die, decl); if (origin != NULL) - origin_die = add_abstract_origin_attribute (var_die, origin); + add_abstract_origin_attribute (var_die, origin); /* Loop unrolling can create multiple blocks that refer to the same static variable, so we must test for the DW_AT_declaration flag. Jakub