Commit 15ed2619 by Jason Merrill Committed by Jason Merrill

Fix gdb.cp/anon-struct.cc with -std=c++11.

gcc/
	* dwarf2out.c (gen_member_die): Don't emit anything for an
	anonymous class constructor.
gcc/cp/
	* decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
	maybe-in-charge constructor.

From-SVN: r222839
parent f8aa3dd3
2015-05-05 Jason Merrill <jason@redhat.com>
* dwarf2out.c (gen_member_die): Don't emit anything for an
anonymous class constructor.
2015-05-05 David Malcolm <dmalcolm@redhat.com>
* auto-profile.c (afdo_find_equiv_class): Fix indentation so
......
2015-05-05 Jason Merrill <jason@redhat.com>
* decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
maybe-in-charge constructor.
* decl.c (start_decl): Don't push the plain VAR_DECL for a
variable template.
......
......@@ -2648,7 +2648,12 @@ reset_type_linkage_2 (tree type)
if (TREE_CODE (m) == VAR_DECL)
reset_decl_linkage (m);
for (tree m = TYPE_METHODS (type); m; m = DECL_CHAIN (m))
reset_decl_linkage (m);
{
reset_decl_linkage (m);
if (DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P (m))
/* Also update its name, for cxx_dwarf_name. */
DECL_NAME (m) = TYPE_IDENTIFIER (type);
}
binding_table_foreach (CLASSTYPE_NESTED_UTDS (type),
bt_reset_linkage_2, NULL);
}
......
......@@ -19951,6 +19951,10 @@ gen_member_die (tree type, dw_die_ref context_die)
/* Don't include clones in the member list. */
if (DECL_ABSTRACT_ORIGIN (member))
continue;
/* Nor constructors for anonymous classes. */
if (DECL_ARTIFICIAL (member)
&& dwarf2_name (member, 0) == NULL)
continue;
child = lookup_decl_die (member);
if (child)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment