This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: frame_register_unwind(): "frame != NULL" assertion failure
On Fri, Feb 14, 2003 at 03:58:55PM +0100, Andrew Cagney wrote:
> >Here's one possible "fix" for the assertion failure. I've come to the
> >conclusion that the real culprit is get_next_frame(), but, unfortunately,
> >the rest of gdb is not yet ready for it to return the sentinel frame.
> >(See the comment in the patch for more info.) So, until it is, I propose
> >that we use this hack...
> >
> > * frame.c (create_sentinel_frame): Make static. Add forward
> > declaration.
> > (frame_register_unwind): Add hack for converting NULL frames
> > into a sentinel frame.
>
> I think, if there is going to be a hac, then it should be in
> read_next_frame_reg().
>
> However, can you please first investigate modifying the start of
> mips_init_extra_frame_info() where it does:
>
> proc_desc = get_next_frame (fci) ? .....
>
> to, when get_next_frame(fci) is null, call:
>
> find_proc_desc (get_frame_pc (fci), fci, 1);
>
> that is the current, and not prev frame.
I'm pretty sure that won't work - we're initializing the saved regs for
fci right now, and find_proc_desc wants a frame to read registers out
of.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer