aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2011-10-25 22:14:26 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2011-10-25 22:14:26 +0000
commit6ea685b8571d933d66f45a5ed99f4b93367b0a44 (patch)
tree133b8d4eb72fce5d2ea80e36c46069fc9f35f1d1
parent55504c7cb6141da67fbc4fc348e3d6432fa77e7d (diff)
downloadgcc-6ea685b8571d933d66f45a5ed99f4b93367b0a44.zip
gcc-6ea685b8571d933d66f45a5ed99f4b93367b0a44.tar.gz
gcc-6ea685b8571d933d66f45a5ed99f4b93367b0a44.tar.bz2
dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily suppress debug info for the parent type.
* dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily suppress debug info for the parent type. From-SVN: r180456
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/dwarf2out.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7789e6c..e6c69f2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2011-10-25 Eric Botcazou <ebotcazou@adacore.com>
+ * dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily
+ suppress debug info for the parent type.
+
+2011-10-25 Eric Botcazou <ebotcazou@adacore.com>
+
* config/ia64/ia64.c (ia64_profile_hook): Fix thinko.
2011-10-25 Richard Henderson <rth@redhat.com>
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index e328201..8d5a9f0 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -15415,7 +15415,11 @@ add_gnat_descriptive_type_attribute (dw_die_ref die, tree type,
dtype_die = lookup_type_die (dtype);
if (!dtype_die)
{
+ /* The descriptive type indirectly references TYPE if this is also the
+ case for TYPE itself. Do not deal with the circularity here. */
+ TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 1;
gen_type_die (dtype, context_die);
+ TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 0;
dtype_die = lookup_type_die (dtype);
gcc_assert (dtype_die);
}