gdb/1971: doing a 'next' from start of __libc_main causes segfault

Daniel Jacobowitz drow@false.org
Sat Jul 16 14:48:00 GMT 2005


The following reply was made to PR gdb/1971; it has been noted by GNATS.

From: Daniel Jacobowitz <drow@false.org>
To: gnu@greglaw.net
Cc: gdb-gnats@sources.redhat.com
Subject: Re: gdb/1971: doing a 'next' from start of __libc_main causes segfault
Date: Sat, 16 Jul 2005 10:43:22 -0400

 On Sat, Jul 16, 2005 at 12:17:13PM -0000, gnu@greglaw.net wrote:
 > Load any C program into the debugger.  Set a breakpoint at
 > __libc_start_main.  Start the pogram.  When the breakpoint is hit,
 > type 'next'.  This results in a segfault.
 
 Ohoh, that's interesting.  I can reproduce.  The problem is with the
 mechanism used to stop backtraces at main.  Once we've stepped into
 main, we can't backtrace out of it by default, but the next() code
 assumes that get_prev_frame succeeded.
 
 What probably _ought_ to happen is the program ought to run to
 completion; after stepping into main we should put a breakpoint on the
 return address of main.  I'd settle for stopping in main in this case.
 
 -- 
 Daniel Jacobowitz
 CodeSourcery, LLC



More information about the Gdb-prs mailing list