This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] Patch to fix reverse return from subroutine error
On Sat, Jun 27, 2009 at 08:49:35PM +0100, Pedro Alves wrote:
> > - || execution_direction == EXEC_REVERSE))
> > + || (execution_direction == EXEC_REVERSE
> > + && ecs->event_thread->step_frame_id.stack_addr_p
> > + && get_frame_id (get_current_frame ()).stack_addr_p
> > + && !gdbarch_inner_than (current_gdbarch,
> > + ecs->event_thread->step_frame_id.stack_addr,
> > + get_frame_id
>
> Sorry to pitch in so late, but this doesn't look right to me.
> Common code shouldn't be accessing frame id members directly, frame ids
> are supposed to be opaque. What is this trying to do?
Nor should it be using gdbarch_inner_than this way; Ulrich just got
through removing most of those. Stack frames do not necessarily need
to be inner than the previous frame.
--
Daniel Jacobowitz
CodeSourcery