From: Karganov Konstantin <kostik@ispras.ru>
To: Bob Rossi <bob@brasko.net>
Cc: GDB <gdb@sources.redhat.com>
Subject: Re: MI output command error
Date: Thu, 10 Mar 2005 13:43:00 -0000 [thread overview]
Message-ID: <Pine.LNX.4.44.0503101603520.7664-100000@ispserv.ispras.ru> (raw)
In-Reply-To: <20050310130544.GA13958@white>
> Yeah, but even using the TOKENS doesn't work. The problem is, whenver I
> front end get's a "(gdb)\r\n" it knows that it can send another command.
> When you use the tokens with this command, you end up with,
>
> (gdb)
> 444-exec-continue
> 444^running
> (gdb)
> 444*stopped,reason="watchpoint-scope",wpnum="2",thread-id="0",frame={addr="0x40039dc9",func="__libc_start_main",args=[],from="/lib/libc.so.6"}
> (gdb)
>
> This is still incorrect. The front end would have to know that the first
> MI output command was not the end of the output from the single MI
> input command. In other words, the FE would have to hardcode the fact
> that the -exec-continue command may output 2 MI output commands. This
> can't be correct, it would be better if the output is changed to,
If I were the GDB maintainer, I'd answer the following:
All "execution" commands (continue, step, next, etc) are partially
asynchronous - in the sence that when the execution is started you can
type a characters to inferior stdin. In this case you need a way to know
when the inferior starts/stops execution.
In GDB the execution commands behave like this - you get a confirmation
(^running) when the execution has started (at this time the command is
assumed to be accomplished) and you get the notification on inferior state
change some time later (*stopped).
So, working over MI you need to handle all execution commands in a way,
that assumes "^running" as a beginning of execution and waits for
"*stopped" for execution end. That's all.
On the other hand, it would be more logical if the execution commands were
considered accomplished only after execution completion (i.e. *running and
^stopped), but I think there was a reason to choose the way it was
actually implemented.
Konstantin.
PS. all this resembles a group of savages, gathered around something
unusual and discussing what could it be used for and guessing what it
actually is... :)
next prev parent reply other threads:[~2005-03-10 13:43 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-09 2:40 Bob Rossi
2005-03-09 23:22 ` Bob Rossi
2005-03-10 9:33 ` Re[2]: " Konstantin Karganov
2005-03-10 13:06 ` Bob Rossi
2005-03-10 13:43 ` Karganov Konstantin [this message]
2005-03-10 14:01 ` Bob Rossi
2005-03-10 14:15 ` Karganov Konstantin
2005-03-10 14:40 ` Bob Rossi
2005-03-10 15:13 ` Karganov Konstantin
2005-03-10 15:52 ` Dave Korn
2005-03-10 16:09 ` 'Bob Rossi'
2005-03-10 16:13 ` Daniel Jacobowitz
2005-03-10 17:44 ` Bob Rossi
2005-03-10 17:52 ` Daniel Jacobowitz
2005-03-10 20:48 ` Bob Rossi
2005-03-10 21:10 ` Daniel Jacobowitz
2005-03-10 21:25 ` Bob Rossi
2005-03-10 16:23 ` Dave Korn
2005-03-10 16:34 ` Daniel Jacobowitz
2005-03-10 16:48 ` Dave Korn
2005-03-10 17:03 ` 'Bob Rossi'
2005-03-11 11:32 ` Re[2]: " Konstantin Karganov
2005-03-11 21:05 Nick Roberts
2005-03-11 21:31 ` Daniel Jacobowitz
2005-03-11 21:36 ` Bob Rossi
2005-03-11 21:39 ` Daniel Jacobowitz
2005-03-11 21:52 ` Nick Roberts
2005-03-12 10:23 ` Eli Zaretskii
2005-03-13 9:36 ` Nick Roberts
2005-03-13 15:40 ` Daniel Jacobowitz
2005-03-13 20:22 ` Nick Roberts
2005-03-13 20:25 ` Daniel Jacobowitz
2005-03-13 23:33 ` Nick Roberts
2005-03-13 23:38 ` Daniel Jacobowitz
2005-03-13 19:41 ` Eli Zaretskii
2005-03-14 7:16 ` Peter D HUERTER
[not found] <1110656346.18541.ezmlm@sources.redhat.com>
2005-03-14 19:11 ` Jim Ingham
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=Pine.LNX.4.44.0503101603520.7664-100000@ispserv.ispras.ru \
--to=kostik@ispras.ru \
--cc=bob@brasko.net \
--cc=gdb@sources.redhat.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