re PR debug/55063 (Thousands of failures in the libstdc++-v3 tests after revision...
authorCary Coutant <ccoutant@google.com>
Thu, 25 Oct 2012 18:30:27 +0000 (18:30 +0000)
committerCary Coutant <ccoutant@gcc.gnu.org>
Thu, 25 Oct 2012 18:30:27 +0000 (11:30 -0700)
gcc/
PR debug/55063
* dwarf2out.c (prune_unused_types_prune): Check whether DIE is
already a declaration.

From-SVN: r192820

gcc/ChangeLog
gcc/dwarf2out.c

index effaa8f317139cc272110c737728a2fa3cbf94c1..f2670109491a493f38768e86d9d2ce179e3e553c 100644 (file)
@@ -1,3 +1,9 @@
+2012-10-25  Cary Coutant  <ccoutant@google.com>
+
+       PR debug/55063
+       * dwarf2out.c (prune_unused_types_prune): Check whether DIE is
+       already a declaration.
+
 2012-10-25  Vladimir Makarov  <vmakarov@redhat.com>
 
        * lra-assigns.c (assign_by_spills): Add non-reload pseudos
index bed3d67353a2613191fbbbb8a0b9ad94cab4c4a7..6442edd85f98b6a6a16ad6bbf9f3dc9e59e0b1e2 100644 (file)
@@ -21259,7 +21259,8 @@ prune_unused_types_prune (dw_die_ref die)
   /* If we pruned children, and this is a class, mark it as a 
      declaration to inform debuggers that this is not a complete
      class definition.  */
-  if (pruned && die->die_mark == 1 && class_scope_p (die))
+  if (pruned && die->die_mark == 1 && class_scope_p (die)
+      && ! is_declaration_die (die))
     add_AT_flag (die, DW_AT_declaration, 1);
 }