[5414] in testers
Re: GCC 3.2.2
daemon@ATHENA.MIT.EDU (Omri Schwarz)
Tue May 20 18:06:39 2003
Message-Id: <200305202206.SAA15086@alice-whacker.mit.edu>
To: Kev <klmitch@MIT.EDU>
cc: "Omri Schwarz" <ocschwar@MIT.EDU>, testers@MIT.EDU, ocschwar@MIT.EDU
In-Reply-To: Your message of "Tue, 20 May 2003 18:03:57 EDT."
<200305202203.SAA07700@multics.mit.edu>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 20 May 2003 18:06:37 -0400
From: Omri Schwarz <ocschwar@MIT.EDU>
> > Program received signal SIGINT, Interrupt.
> > 0xffffe002 in ?? ()
> > (gdb) where
> > #0 0xffffe002 in ?? ()
> > #1 0x0804834a in main () at test.c:8
> > #2 0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
> > (gdb) q
> > The program is running. Exit anyway? (y or n) y
> >
> > Something is very wrong here.
>
> Nope, this is exactly what's supposed to happen. GDB breaks before the
> signal is processed by the program. If you did a "continue" here, the
> program would process the SIGINT and exit.
The something that is wrong is the lack of proper debugging symbols
for the foo() function.
I ran into this in a much more complicated case (my
big blob of C code) where I could not use pause() to create
points for catching the process with GDB because I could
not get a full stack frame. The call to pause() and the calling
function would both be lost.