This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: Support for "break *ADDRESS thread THREADNO"
- From: Daniel Jacobowitz <drow at false dot org>
- To: "Maciej W. Rozycki" <macro at mips dot com>
- Cc: gdb-patches at sources dot redhat dot com
- Date: Tue, 12 Apr 2005 14:13:34 -0400
- Subject: Re: Support for "break *ADDRESS thread THREADNO"
- References: <Pine.LNX.4.61.0504121544140.13777@perivale.mips.com>
On Tue, Apr 12, 2005 at 04:53:55PM +0100, Maciej W. Rozycki wrote:
> Hello,
>
> The current version of gdb does not accept the "thread THREADNO" clause
> for breakpoints at an address. I'm not sure if that's a bug or feature as
> the info pages carefully avoid documenting what should happen in this
> case, referring to source lines instead.
>
> Anyway I've found the inability to set up such breakpoints an obstacle,
> so I've implemented the missing bits for it to work. Here's the result.
> I've run-time tested the C language bit only (i.e. c-exp.y), but the other
> .y changes are essentially the same, so they should work as well.
> Unfortunately I haven't found a way of testing the Ada part which is
> significantly different; I hope it's OK.
>
> 2005-04-12 Maciej W. Rozycki <macro@mips.com>
>
> * ada-lex.l: Support the "thread THREADNO" clause with breakpoints
> at an address.
> * c-exp.y (yylex): Likewise.
> * f-exp.y (yylex): Likewise.
> * jv-exp.y (yylex): Likewise.
> * m2-exp.y (yylex): Likewise.
> * objc-exp.y (yylex): Likewise.
> * p-exp.y (yylex): Likewise.
>
> This has been verified for the HEAD version with the test suite for the
> i386-linux-gnu system natively with no regressions. Please consider.
No, sorry. Consider:
(gdb) p *thread
No symbol table is loaded. Use the "file" command.
After your patch:
(gdb) b *thread
A parse error in expression, near `thread'.
We can get away with this for 'if', because 'if' is a keyword in just
about every language GDB supports, and an unlikely name for a variable.
That's not going to fly for 'thread', however.
--
Daniel Jacobowitz
CodeSourcery, LLC