From: Daniel Jacobowitz <drow@false.org>
To: Vladimir Prus <vladimir@codesourcery.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH:MI] Event notification
Date: Sun, 04 May 2008 21:34:00 -0000 [thread overview]
Message-ID: <20080504195904.GA15993@caradoc.them.org> (raw)
In-Reply-To: <fvk6qe$cb5$1@ger.gmane.org>
On Sun, May 04, 2008 at 03:30:56PM +0400, Vladimir Prus wrote:
> I think that when execution stops, all threads have frame 0 as selected, no?
Most of the time, but not necessarily. For Ada we automatically
select the exception site on catch/throw events. For C++ we do not,
but we ought to.
> Some interesting questions arise, with the first one -- what is the exact
> meaning of those new notifications and what is the expected reaction in frontend?
> For example, suppose you have a bunch of fixed variable objects in different
> threads. Then, -var-update * will switch between threads to evaluate the variable
> objects. This, I think, will produce a bunch of thread change and frame change
> notifications? What will frontend do? If a frontend updates the current
> line indicator as result of those notifications, then "-var-update *" will
> cause the line indicator to jump around in a fairly interesting way :-)
>
> One way to address this is to suppress those notification for implicit
> gdb activity. I don't see how we can easily do this. Another way would
> be instruct the frontends to ignore those notifications during some commands.
> But then, I'm not sure how to do this without creating a huge table of
> commands that implicitly change thread/stack, and without running the risk
> of making the frontend act funny if we forget a command, or unintentionally
> make some other command switch thread/frames.
IIRC Nick added the thread switch events only when we print out
[Switching] messages for the CLI, which are already at the sites of
explicit activity.
The other way to do it is to generate these events at prompts, either
before the result or after the prompt. We're about to display a
prompt so we check the selected frame against what was selected last
time we displayed a prompt. It changed? Show an event.
--
Daniel Jacobowitz
CodeSourcery
next prev parent reply other threads:[~2008-05-04 19:59 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-18 0:42 Nick Roberts
2008-05-01 18:57 ` Daniel Jacobowitz
2008-06-10 2:20 ` Nick Roberts
2008-06-10 2:54 ` Daniel Jacobowitz
2008-06-10 4:25 ` Nick Roberts
2008-06-10 7:02 ` Pedro Alves
2008-05-04 12:19 ` Vladimir Prus
2008-05-04 21:34 ` Daniel Jacobowitz [this message]
2008-05-04 23:19 ` Nick Roberts
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080504195904.GA15993@caradoc.them.org \
--to=drow@false.org \
--cc=gdb-patches@sources.redhat.com \
--cc=vladimir@codesourcery.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox