This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] gdb_assert -> complaint for weird DWARF
- From: Doug Evans <dje at google dot com>
- To: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- Cc: gdb-patches <gdb-patches at sourceware dot org>
- Date: Mon, 24 Feb 2014 14:59:50 -0800
- Subject: Re: [patch] gdb_assert -> complaint for weird DWARF
- Authentication-results: sourceware.org; auth=none
- References: <20140224214314 dot GA5700 at host2 dot jankratochvil dot net> <CADPb22RpU2pMtWnPN-Rmc8J1sQDS6-dsUQ4e39WsJi+QKK6K7A at mail dot gmail dot com> <20140224220439 dot GA7121 at host2 dot jankratochvil dot net>
On Mon, Feb 24, 2014 at 2:04 PM, Jan Kratochvil
<jan.kratochvil@redhat.com> wrote:
> Hi Doug,
>
> On Mon, 24 Feb 2014 22:55:49 +0100, Doug Evans wrote:
>> Can you dig into the details of why the assert is tripping?
>> I'm not comfortable with adding more complaints without at least
>> including documentation of details.
>
> I have filed the Fedora GCC bug:
> https://bugzilla.redhat.com/show_bug.cgi?id=1069382
>
> This is all I can do now. My build of FSF GCC does not upset GDB.
>
> I agree the current situation is not great, IMO there is a gnat DWARF
> generator bug.
Can you send me the binaries for repro?
I see in the above bug report an abstract_origin which is what the
patch has specific code for to avoid tripping the assert.
We could probably generate a good testcase for gdb from that.
Another worry I have is that if my expectation that we shouldn't be
recursively calling process_die (even for bad debug info) is wrong,
then is there some obscure case where possible accidental re-reading
of a DIE is actually needed by the current code to get the right
answer (IOW is making this a complaint and returning also introducing
a bug? Less of a bug than crashing or infinite recursion of course,
but IWBN to invest some time to dig deeper given that we have a repro
at hand).