This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Fix gdb.cp/gdb2495.exp regression with gcc-4.7
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Pedro Alves <alves dot ped at gmail dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 2 Jan 2012 15:19:37 +0100
- Subject: Re: [patch] Fix gdb.cp/gdb2495.exp regression with gcc-4.7
- References: <20111222202047.GA16110@host2.jankratochvil.net> <4F01BAA6.8000004@gmail.com>
On Mon, 02 Jan 2012 15:09:42 +0100, Pedro Alves wrote:
> I'm confused. Shouldn't this instead be handled in the unwind
> machinery? Is this subtraction you refer to the
> get_frame_address_in_block one? That already has special
> handling for something like this. Why doesn't it work?
This `- 1' is in inferior's:
gcc/libgcc/unwind-dw2.c:
uw_frame_state_for:
fde = _Unwind_Find_FDE (context->ra + _Unwind_IsSignalFrame (context) - 1,
&context->bases);
GDB can only change the address put on inferior stack and later picked up by
the inferior's exceptions unwinder.
Thanks,
Jan