* dwarf2out.c (gen_decl_die): Don't call
gen_tagged_type_instantiation_die if decl doesn't have tagged type.
* gcc.dg/debug/pr32610.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127669
138bc75d-0d04-0410-961f-
82ee72b054a4
+2007-08-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/32610
+ * dwarf2out.c (gen_decl_die): Don't call
+ gen_tagged_type_instantiation_die if decl doesn't have tagged type.
+
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
was generated within the original definition of an inline function) we
have to generate a special (abbreviated) DW_TAG_structure_type,
DW_TAG_union_type, or DW_TAG_enumeration_type DIE here. */
- if (TYPE_DECL_IS_STUB (decl) && decl_ultimate_origin (decl) != NULL_TREE)
+ if (TYPE_DECL_IS_STUB (decl) && decl_ultimate_origin (decl) != NULL_TREE
+ && is_tagged_type (TREE_TYPE (decl)))
{
gen_tagged_type_instantiation_die (TREE_TYPE (decl), context_die);
break;
2007-08-21 Jakub Jelinek <jakub@redhat.com>
+ PR debug/32610
+ * gcc.dg/debug/pr32610.c: New test.
+
* g++.dg/init/new24.C: New test.
PR middle-end/32912
--- /dev/null
+/* PR debug/32610 */
+/* { dg-do compile } */
+
+inline void
+foo (int x)
+{
+ double (*arr)[x];
+}
+
+void
+bar (void)
+{
+ foo (1);
+}