This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/17924] [4.0 Regression] gcc.dg/debug/dwarf2/dwarf-die7.c fails
- From: "jason at redhat dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 Jan 2005 12:16:03 -0000
- Subject: [Bug debug/17924] [4.0 Regression] gcc.dg/debug/dwarf2/dwarf-die7.c fails
- References: <20041010202301.17924.pinskia@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From jason at redhat dot com 2005-01-01 12:16 -------
Subject: Re: [4.0 Regression]
gcc.dg/debug/dwarf2/dwarf-die7.c fails
On 31 Dec 2004 22:46:37 -0000, "dberlin at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> wrote:
> When we inline a C++ constructor that isn't going to be output, we get the
> following stuff:
>
> a block for the inlined constructor, with an abstract origin of:
> a decl named __comp_ctor with an abstract origin of:
> a decl named bad_typeid
This sounds right. The inlined constructor is an instance of a clone of a
constructor.
> we call gen_inlined_subroutine_die on the block, which calls block_ultimate_origin.
> block_ultimate_origin returns *the __comp_ctor* decl.
But this is wrong. It seems that block_ultimate_origin needs to follow
DECL_ABSTRACT_ORIGIN, too.
Jason
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17924