aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-10-27 15:57:47 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2016-10-27 15:57:47 +0200
commit953f0758237ac909dcdd84d91d4c4dbfe787e40a (patch)
treedc7e290707df785d2c552e83b4d56087170dad9e /gcc
parente63d7e71a19aabb2b8d46e695ea6c2db1345c1d4 (diff)
downloadgcc-953f0758237ac909dcdd84d91d4c4dbfe787e40a.zip
gcc-953f0758237ac909dcdd84d91d4c4dbfe787e40a.tar.gz
gcc-953f0758237ac909dcdd84d91d4c4dbfe787e40a.tar.bz2
dwarf2out.c (gen_member_die): Only reparent_child instead of splice_child_die if...
* dwarf2out.c (gen_member_die): Only reparent_child instead of splice_child_die if child doesn't have DW_AT_specification attribute. From-SVN: r241622
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/dwarf2out.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c93a12e..9eea9a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2016-10-27 Jakub Jelinek <jakub@redhat.com>
+
+ * dwarf2out.c (gen_member_die): Only reparent_child instead of
+ splice_child_die if child doesn't have DW_AT_specification attribute.
+
2016-10-27 Thomas Preud'homme <thomas.preudhomme@arm.com>
* config/arm/arm.h (TARGET_HAVE_LDREX): Define for ARMv8-M Baseline.
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 515ee6e..78a2979 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -22624,7 +22624,8 @@ gen_member_die (tree type, dw_die_ref context_die)
/* Handle inline static data members, which only have in-class
declarations. */
if (child->die_tag == DW_TAG_variable
- && child->die_parent == comp_unit_die ())
+ && child->die_parent == comp_unit_die ()
+ && get_AT (child, DW_AT_specification) == NULL)
{
reparent_child (child, context_die);
child->die_tag = DW_TAG_member;