From: Bob Rossi <bob@brasko.net>
To: gdb@sourceware.org
Subject: Re: MI async status output
Date: Thu, 17 Apr 2014 12:07:00 -0000 [thread overview]
Message-ID: <20140414103313.GA6159@linux> (raw)
In-Reply-To: <20140412002538.GA27657@linux>
On Fri, Apr 11, 2014 at 08:25:38PM -0400, Bob Rossi wrote:
> On Fri, Apr 11, 2014 at 11:01:40AM +0100, Andrew Burgess wrote:
> > On 10/04/2014 9:12 PM, Bob Rossi wrote:
> > > On Thu, Apr 10, 2014 at 07:00:54PM +0400, Vladimir Prus wrote:
> > >> On 10.04.2014 01:08, Bob Rossi wrote:
> > >>> I'm writing unit tests for my MI parser and was trying to get
> > >>> GDB to output some out of band, async records of type:
> > >>> status-async-output.
> > > ...
> > >>> Does anyone have a simple recipe for getting GDB to output some
> > >>> async status output?
...
> > I did the this:
> > 1. Build hello-world test program
> > 2. Start gdbserver as: gdbserver :1234 helloworld.exe
> > 3. Start gdb as: gdb -i mi helloworld.exe
> > 4. Within gdb:
> > (gdb) -target-select remote :1234
> > (gdb) -target-download
> > # Bunch of +download lines
...
> Thanks! Unfortunately, GDB is dumping invalid MI here.
> ...
> +download,{section=".interp",section-size="28",total-size="2466"}
> ...
> ^done...
> (gdb)
>
> The MI rules are:
> 1)
> +download,{section=".interp",section-size="28",total-size="2466"}
> ^ (+ eaten here)
> status-async-output ==>
> [ token ] "+" async-output nl
>
> 2)
> +download,{section=".interp",section-size="28",total-size="2466"}
> ^ (download eaten by async-class)
> async-output ==>
> async-class ( "," result )*
> async-class ==>
> "stopped" | others (where others includes download i guess)
>
> 3)
> +download,{section=".interp",section-size="28",total-size="2466"}
> ^ (, eaten here)
> async-output ==>
> async-class ( "," result )*
>
> 4) Error here: result must start with a variable name.
> +download,{section=".interp",section-size="28",total-size="2466"}
> ^ (syntax error)
> result ==>
> variable "=" value
> variable ==>
> string
>
> Did I find a bug or is this well known behavior of GDB and MI?
>
> If it's well known behavior, can anyone explain it? It's possible that
> result could be just a 'value' instead of 'variable = value'. In this
> case that would solve the problem perhaps.
>
> Any advice would be appreciated.
Ping.
Bob Rossi
next prev parent reply other threads:[~2014-04-14 10:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-09 21:08 Bob Rossi
2014-04-10 15:01 ` Vladimir Prus
2014-04-10 20:13 ` Vladimir Prus
2014-04-11 10:01 ` Bob Rossi
2014-04-11 12:57 ` Andrew Burgess
2014-04-12 0:25 ` Bob Rossi
2014-04-14 6:25 ` Bob Rossi
2014-04-17 12:07 ` Bob Rossi [this message]
2014-04-18 10:46 ` Vladimir Prus
2014-04-18 13:11 ` Bob Rossi
2014-04-18 16:30 ` Vladimir Prus
2014-04-18 16:42 ` Bob Rossi
2014-04-18 17:59 ` Vladimir Prus
2014-04-18 19:27 ` Bob Rossi
2014-04-18 20:39 ` Terekhov, Mikhail
2014-04-19 8:28 ` Bob Rossi
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=20140414103313.GA6159@linux \
--to=bob@brasko.net \
--cc=gdb@sourceware.org \
/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