This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: asynchronous MI output commands
On Fri, May 05, 2006 at 09:59:03PM -0400, Daniel Jacobowitz wrote:
> On Fri, May 05, 2006 at 09:27:06PM -0400, Bob Rossi wrote:
> > The first problem that I've run into is determining if an MI output
> > command is synchronous or asynchronous. I can tell if the MI output
> > command is asynchronous by looking for, reason="abc", like below,
> > 47*stopped,reason="end-stepping-range",thread-id="0", ...
>
> `ASYNC-RECORD ==>'
> `EXEC-ASYNC-OUTPUT | STATUS-ASYNC-OUTPUT | NOTIFY-ASYNC-OUTPUT'
>
> `EXEC-ASYNC-OUTPUT ==>'
> `[ TOKEN ] "*" ASYNC-OUTPUT'
>
> `STATUS-ASYNC-OUTPUT ==>'
> `[ TOKEN ] "+" ASYNC-OUTPUT'
>
> `NOTIFY-ASYNC-OUTPUT ==>'
> `[ TOKEN ] "=" ASYNC-OUTPUT'
>
> Why can't you tell that output is asynchronous from the *stopped, as
> opposed to ^done?
Also, what about this case?
~"GNU gdb 6.1-debian\n"
~"Copyright 2004 Free Software Foundation, Inc.\n"
~"GDB is free software, covered by the GNU General Public License, and you are\n"
~"welcome to change it and/or distribute copies of it under certain conditions.\n"
~"Type \"show copying\" to see the conditions.\n"
~"There is absolutely no warranty for GDB. Type \"show warranty\" for details.\n"
~"This GDB was configured as \"i386-linux\"..."
~"Using host libthread_db library \"/lib/libthread_db.so.1\".\n"
~"\n"
(gdb)
Is this considered synchronous or asynchronous? I consider it
asynchronous, and I don't have any way to tell that except check to see
if the parse tree has nothing but stream messages. What do you think?
Thanks,
Bob Rossi