public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: 'Bob Rossi' <bob@brasko.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb@sources.redhat.com
Subject: Re: probing GDB for MI versions
Date: Wed, 13 Oct 2004 14:05:00 -0000	[thread overview]
Message-ID: <20041013121412.GA22696@white> (raw)
In-Reply-To: <01c4b0df$Blat.v2.2.2$e933d3e0@zahav.net.il>

On Wed, Oct 13, 2004 at 06:47:37AM +0200, Eli Zaretskii wrote:
> > Date: Tue, 12 Oct 2004 20:31:35 -0400
> > From: 'Bob Rossi' <bob@brasko.net>
> > 
> > With this idea there are 2 alternatives I can think of.
> >    * put the handshaking under a different interpreter (-i=mi-handshake)
> >    * integrate the handshaking as part of the MI protocol (version 3 and on)
> 
> What's wrong with a simpler idea already suggested here: that GDB will
> output the MI version as part of the starting blurb when invoked with
> "-interpreter=mi" option?

That method is fine if GDB supports only one stable MI protocol at a
time. However, I have been told that GDB will support multiple versions
of MI at a time.

If GDB supported only one stable MI version at a time, then it could
just do what you are saying, tell the front end what version it is going
to output. This is basically how XML and HTML documents work. The first
line is the version of the file, and the client reads that and uses the
appropriate parser.

However, GDB is not that simple. It can support several versions of the
MI protocol. Some of the versions can be developmental, others can be
stable, and others can be unstable. For instance, the current GDB has
mi2 being stable, and mi1 being unstable (not tested). For this reason,
GDB and the front end actually need to handshake to determine what
protocol should be used. I'm assuming that this is more like the
Ethernet example someone brought up were all of the devices have to
query each other to figure out what protocol to use.

Here is something I came up with last night,

   GDB/MI Handshaking output

   mi-handshake-input  => mi-protocol-output [ "," mi-protocol-output ]* nl
   mi-protocol-output  => mi-protocol-class "=" mi-protocol
   mi-protocol-class   => "mi_unsupported" | "mi_supported" | "mi_development"
   mi-protocol         => "mi" digit
   digit               => 1 | 1 + digit
   nl                  => CR | CR NL | NL

   GDB/MI Handshaking input

   mi-handshake-input => mi-protocol nl

Obviously, that results in GDB outputting something like,
   mi_unsupported=mi1,mi_supported=mi2,mi_development=mi3
and the front end sending to GDB simply "mi2".

Thanks,
Bob Rossi

  reply	other threads:[~2004-10-13 12:14 UTC|newest]

Thread overview: 211+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-03 17:15 Bob Rossi
2004-10-04  9:00 ` Eli Zaretskii
2004-10-04 13:19   ` Bob Rossi
2004-10-05  9:10     ` Eli Zaretskii
2004-10-05 12:34       ` Bob Rossi
2004-10-06 10:19         ` Eli Zaretskii
2004-10-06 11:47           ` Bob Rossi
2004-10-06 12:13             ` Dave Korn
2004-10-06 16:31               ` 'Bob Rossi'
2004-10-06 16:46                 ` Nathan J. Williams
2004-10-06 16:55                   ` 'Bob Rossi'
2004-10-06 17:04                     ` Nathan J. Williams
2004-10-06 17:15                       ` 'Bob Rossi'
2004-10-06 16:57                 ` Dave Korn
2004-10-06 17:12                   ` 'Bob Rossi'
2004-10-06 17:21                     ` Dave Korn
2004-10-06 17:24                       ` 'Bob Rossi'
2004-10-06 17:31                         ` Daniel Jacobowitz
2004-10-06 17:38                           ` Bob Rossi
2004-10-06 17:41                             ` Dave Korn
2004-10-06 17:55                               ` 'Bob Rossi'
2004-10-06 18:19                                 ` Paul Koning
2004-10-07 10:56                                 ` Dave Korn
2004-10-07 14:15                                   ` 'Bob Rossi'
2004-10-07 14:28                                     ` Dave Korn
2004-10-07 14:37                                       ` 'Bob Rossi'
2004-10-07 14:39                                         ` Dave Korn
2004-10-07 14:50                                           ` 'Bob Rossi'
2004-10-07 15:38                                             ` Dave Korn
2004-10-07 15:49                                               ` 'Bob Rossi'
2004-10-07 16:31                                                 ` Nathan J. Williams
2004-10-07 16:45                                                 ` Alain Magloire
2004-10-07 17:12                                                 ` Dave Korn
     [not found]                                                 ` <200410071614.MAA19648@smtp.ott.qnx.com>
2004-10-08  6:56                                                   ` 'Bob Rossi'
2004-10-08  9:10                                                     ` Eli Zaretskii
2004-10-10 18:13                                                       ` 'Bob Rossi'
2004-10-11 17:46                                                         ` 'Bob Rossi'
2004-10-13 12:14                                                         ` 'Bob Rossi'
2004-10-13 12:48                                                           ` Eli Zaretskii
2004-10-13 14:05                                                             ` 'Bob Rossi' [this message]
2004-10-14  7:10                                                               ` Eli Zaretskii
2004-10-14 19:34                                                                 ` 'Bob Rossi'
2004-10-14 21:23                                                                   ` Andrew Cagney
2004-10-15 15:40                                                                     ` 'Bob Rossi'
2004-10-15 13:02                                                                   ` Eli Zaretskii
2004-10-15 13:28                                                                     ` Michael Chastain
2004-10-15 13:42                                                                       ` Eli Zaretskii
2004-10-15 18:04                                                                     ` 'Bob Rossi'
2004-10-16 15:46                                                                       ` Eli Zaretskii
2004-10-16 21:56                                                                         ` 'Bob Rossi'
2004-10-17 18:59                                                                           ` Eli Zaretskii
2004-10-19 13:51                                                                             ` 'Bob Rossi'
2004-10-19 14:18                                                                               ` Daniel Jacobowitz
2004-10-19 19:28                                                                                 ` Bob Rossi
2004-10-19 20:17                                                                                 ` Eli Zaretskii
2004-10-06 18:43                               ` Andrew Cagney
2004-10-06 18:54                                 ` 'Bob Rossi'
2004-10-06 19:19                                   ` Andrew Cagney
2004-10-06 19:25                                     ` 'Bob Rossi'
2004-10-06 17:36                         ` Dave Korn
2004-10-06 17:51                         ` Paul Koning
2004-10-06 18:09                           ` Bob Rossi
2004-10-06 17:05                 ` Alain Magloire
2004-10-06 19:16 ` Andrew Cagney
2004-10-06 19:20   ` Bob Rossi
2004-10-06 20:10     ` Alain Magloire
2004-10-06 20:15       ` Bob Rossi
2004-10-06 20:13     ` Andrew Cagney
2004-10-08 10:28       ` Eli Zaretskii
2004-10-08 18:48         ` Daniel Jacobowitz
  -- strict thread matches above, loose matches on Subject: below --
2005-10-10 20:46 Laziness David Lecomber
2005-10-10 20:50 ` Laziness Daniel Jacobowitz
2005-10-10 21:05   ` Laziness David Lecomber
2005-10-10 21:09     ` Laziness Daniel Jacobowitz
2005-10-10 21:24       ` Laziness David Lecomber
2005-10-10 21:27         ` Laziness Daniel Jacobowitz
2005-10-10 23:53           ` Laziness Paul Hilfinger
     [not found] <200508292030.NAA29909@hpsje.cup.hp.com>
     [not found] ` <1125360166.9350.69.camel@aretha.corp.specifix.com>
2005-08-30  1:13   ` HP gdb/wdb sources available Daniel Jacobowitz
2005-08-30  2:13     ` Paul Hilfinger
2004-10-26 14:49 backtrace changes current source location Felix Lee
2004-10-28 13:49 ` Daniel Jacobowitz
2004-10-06  1:03 Bumping MI protocol Bob Rossi
2004-10-06  5:08 ` Nathan J. Williams
2004-10-06 11:27   ` Bob Rossi
2004-10-06 12:30     ` Eli Zaretskii
2004-10-06 16:38       ` Bob Rossi
2004-10-06 16:45         ` Nathan J. Williams
2004-10-06 19:53           ` Bob Rossi
     [not found]       ` <eliz@gnu.org>
2004-10-06 16:57         ` Felix Lee
2004-10-06 17:03           ` Bob Rossi
2004-10-04 17:51 gdbserver, sysroot, prelink Felix Lee
2004-10-04 18:12 ` Daniel Jacobowitz
     [not found] <5956F1E2-EB0D-11D8-9949-000A9569836A@apple.com>
2004-08-11  0:51 ` GDB/XMI (XML Machine Interface) Chris Friesen
     [not found]   ` <gdb001@speakeasy.net>
2004-08-11  6:28     ` Felix Lee
2004-08-11  8:25       ` Chris Friesen
2004-08-11 22:43     ` Felix Lee
2004-08-12  4:54       ` OT: " Chris Friesen
2004-08-20 10:34     ` Felix Lee
2004-08-20 12:54       ` Bob Rossi
2004-08-20 18:34         ` Daniel Jacobowitz
2004-08-20 18:49           ` Bob Rossi
2004-08-20 18:52             ` Daniel Jacobowitz
2004-08-20 19:25               ` Bob Rossi
2004-08-20 19:42                 ` Daniel Jacobowitz
2004-08-20 19:59                   ` Bob Rossi
2004-08-21 10:25                     ` Eli Zaretskii
2004-08-21 12:34                       ` Bob Rossi
2004-08-21 13:34                         ` Eli Zaretskii
     [not found]         ` <bob@brasko.net>
2004-08-20 18:20           ` Felix Lee
2004-08-20 21:34           ` Felix Lee
2004-08-21 19:21           ` Felix Lee
2004-08-21 20:21             ` Bob Rossi
2004-08-21 19:28           ` Felix Lee
2004-08-21 20:16             ` Bob Rossi
2004-08-21 21:28           ` Felix Lee
2004-08-21 22:37           ` Felix Lee
2004-10-03 18:36           ` GDB/MI snapshots between major release's Felix Lee
2004-10-03 18:40             ` Bob Rossi
2004-10-03 18:42               ` Daniel Jacobowitz
2004-10-03 19:35                 ` Bob Rossi
2004-10-03 19:39           ` Felix Lee
2004-10-03 20:19             ` Bob Rossi
2004-10-04  5:00           ` Felix Lee
2004-10-04 15:34           ` Felix Lee
2004-10-04 15:58             ` Bob Rossi
2004-10-04 16:48           ` Felix Lee
2004-10-04 17:37             ` Bob Rossi
2004-10-04 18:31           ` Felix Lee
2004-10-04 19:00             ` Bob Rossi
2004-10-04 21:07           ` Felix Lee
2004-10-03 17:01             ` Bob Rossi
2004-10-04  5:04               ` Eli Zaretskii
2004-10-04 14:59                 ` Bob Rossi
2004-10-04 15:49                   ` Mark Kettenis
2004-10-04 16:04                     ` Bob Rossi
2004-10-05 10:57                       ` Eli Zaretskii
2004-10-05 14:18                         ` Daniel Jacobowitz
2004-10-06  1:40                           ` Bob Rossi
2004-10-06 11:14                           ` Eli Zaretskii
2004-10-06 11:39                             ` Bob Rossi
2004-10-06 13:19                               ` Eli Zaretskii
2004-10-06 16:55                                 ` Bob Rossi
2004-10-06 17:00                                   ` Paul Koning
2004-10-06 17:02                                     ` Bob Rossi
2004-10-04 21:27             ` Daniel Jacobowitz
2004-10-04 22:14             ` Bob Rossi
2004-10-05  9:03               ` Fabian Cenedese
2004-10-05  9:18                 ` Eli Zaretskii
2004-10-05 13:37                   ` Bob Rossi
2004-10-05 18:53           ` probing GDB for MI versions Felix Lee
2004-10-06 17:14           ` GDB/MI snapshots between major release's Felix Lee
2004-10-06 17:21             ` Daniel Jacobowitz
2004-10-06 18:41           ` Felix Lee
2004-10-06 18:50             ` Bob Rossi
2004-10-06 18:55           ` Bumping MI protocol Felix Lee
2004-10-06 19:43             ` Bob Rossi
2004-10-06 21:04           ` Felix Lee
2004-10-07 18:01           ` probing GDB for MI versions Felix Lee
2004-10-07 19:44             ` Bob Rossi
2004-10-08  8:54               ` Fabian Cenedese
2004-10-19 20:13           ` Felix Lee
2004-10-19 20:23             ` Eli Zaretskii
2004-10-19 21:27             ` Bob Rossi
2004-11-09  2:27             ` Bob Rossi
2004-08-10 20:14 GDB/XMI (XML Machine Interface) Bob Rossi
2004-08-10 22:38 ` Kip Macy
2004-08-11  0:17 ` Michael Chastain
2004-08-11  7:36 ` Fabian Cenedese
2004-08-11  8:51 ` Nick NoSpam
2004-08-11 18:05 ` Bob Rossi
2004-08-11 19:26   ` Alain Magloire
2004-08-11 22:35     ` Jason Molenda
2004-08-12 13:03       ` Nick NoSpam
2004-08-19 23:49 ` Bob Rossi
2004-08-20  7:09   ` Chris Friesen
2004-08-20 12:47     ` Bob Rossi
2004-07-29  5:10 breaking at for-loop test line Allen Hopkins
2004-07-29 16:29 ` Daniel Jacobowitz
2004-07-29 18:58   ` Andre Ancelin
2004-07-30 11:32   ` Eli Zaretskii
2004-08-03 19:21     ` Daniel Jacobowitz
2004-08-03 20:09       ` Andrew Cagney
2004-08-03 20:21         ` Daniel Jacobowitz
2004-07-25  1:18 [proposal/testsuite] require build == host Michael Chastain
2004-07-25  1:52 ` Felix Lee
2004-07-25  2:43   ` Daniel Jacobowitz
     [not found]     ` <drow@false.org>
2004-07-25 22:36       ` Felix Lee
2004-07-26 18:07         ` Michael Chastain
2004-07-27  4:41           ` Felix Lee
2004-07-29 22:21       ` breaking at for-loop test line Felix Lee
2004-07-30  8:23         ` Baurjan Ismagulov
     [not found]           ` <ibr@ata.cs.hun.edu.tr>
2004-07-30 10:46             ` Felix Lee
2004-08-03 18:53               ` Daniel Jacobowitz
2004-08-20 19:06       ` GDB/XMI (XML Machine Interface) Felix Lee
2004-08-20 19:09         ` Daniel Jacobowitz
2004-08-20 19:20       ` Felix Lee
2004-08-21 12:37         ` Bob Rossi
2004-10-04 19:05       ` gdbserver, sysroot, prelink Felix Lee
2004-10-04 19:24         ` Daniel Jacobowitz
2004-10-05 13:03           ` Andrew Cagney
2004-10-05 13:52             ` Daniel Jacobowitz
2004-10-05 13:53       ` Felix Lee
2004-10-06 17:58       ` GDB/MI snapshots between major release's Felix Lee
2004-10-29  8:32       ` backtrace changes current source location Felix Lee
2004-07-25  7:59 ` [proposal/testsuite] require build == host Eli Zaretskii
2004-07-27  0:45 ` Andrew Cagney
2004-07-27  2:31   ` Michael Chastain
2004-07-27  4:16     ` Eli Zaretskii
2004-07-27 15:32     ` Andrew Cagney
2004-07-27 15:50       ` Christopher Faylor
2004-07-27 21:17       ` Michael Chastain

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=20041013121412.GA22696@white \
    --to=bob@brasko.net \
    --cc=eliz@gnu.org \
    --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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).