Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Bob Rossi <bob_rossi@cox.net>
To: Nick Roberts <nickrob@snap.net.nz>
Cc: gdb-patches@sources.redhat.com
Subject: Re: starting gdb/mi from FE
Date: Tue, 06 Jun 2006 02:01:00 -0000	[thread overview]
Message-ID: <20060606020143.GG10045@brasko.net> (raw)
In-Reply-To: <17540.57500.193504.704637@kahikatea.snap.net.nz>

On Tue, Jun 06, 2006 at 01:55:40PM +1200, Nick Roberts wrote:
> B> > > $This change is backwards compatible because users were not able in the 
>  > > > $past to have a comma separated list in the -i flag.
>  > > 
>  > > Backward compatible because it won't work with any version before GDB 6.5?
>  > 
>  > Backward compatible because FE's can use mi2 when they do mi2, and
>  > mi3,mi2 when they do more than mi2. I'm thinking no front end will ever
>  > support mi1 (correct me if I'm wrong). Therefore, if we do this now,
>  > it'll work for most FE's.
> 
> But it won't work for *released* versions of GDB.

Hmmm, I see your point. As soon as I support mi3, it won't work with
these old released GDB's anymore. In that case, I'll know that I have to
try start GDB with just mi2 on it's own. I don't see any other solution.

>  >...
>  > > Pre GDB 6.5 wouldn't really work in this case either, but
>  > > 
>  > >   (gdb)
>  > >   -mi-version
>  > >   ^error,msg="Undefined MI command: mi-version"
>  > >   (gdb)
>  > > 
>  > > wouldn't require restarting GDB, while:
>  > > 
>  > >   nickrob/21 gdb -i=mi2,mi1 myprog
>  > >   Interpreter `mi2,mi1' unrecognized
>  > >   nickrob/22
>  > > 
>  > > would.
>  > 
>  > That's not correct. Unless you will work with mi1. It will work with mi2
>  > on as described above. 
> 
> I don't see how, unless you plan to `recall' all released versions of GDB.
> 
>  >                        Also, the solution your provide is a chicken/egg 
>  > problem. If anyone ever changes the MI output syntax in a non backwards 
>  > compatible way, then I will not know which generated parser to use. If I
>  > don't know which generated parser to use, I can't possible call
>  > -mi-version and expect to parse the output.
> 
> If it changes from:
> 
> (gdb)
> -mi-version
> ^done,major="3",minor="1"
> (gdb)
> 
> your right, but I think this part of MI should be pretty constant.  I imagine
> MI level changes involving things like asynchronous operation, event
> notification etc.

This solution works if you can guarentee that the protocol will never
change. I don't care anything about the format of specific MI commands.

>  >                                                I think it's bad to provide
>  > functionality that only works with makeshift parsers.
> 
> I think we need to be practical and work within our limited resources.  If
> a corporate sponsor comes along then maybe we can consider such general
> principles.

I'm confused, the patch I provided is about 20 lines of code. If you are
talking about generating a parser, I've also done that with a 300 line
bison input file.  I think I'm misunderstanding you here.

Bob Rossi


  reply	other threads:[~2006-06-06  2:01 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-06  0:55 Nick Roberts
2006-06-06  1:20 ` Daniel Jacobowitz
2006-06-06  1:56   ` Bob Rossi
2006-06-06  3:16     ` Daniel Jacobowitz
2006-06-06  2:03   ` Nick Roberts
2006-06-06  2:04     ` Bob Rossi
2006-06-06 17:22     ` Jim Ingham
2006-06-06 17:30       ` Daniel Jacobowitz
2006-06-06 17:41         ` Jim Ingham
2006-06-06  1:33 ` Bob Rossi
2006-06-06  1:56   ` Nick Roberts
2006-06-06  2:01     ` Bob Rossi [this message]
2006-06-06  2:30       ` Nick Roberts
  -- strict thread matches above, loose matches on Subject: below --
2006-06-05 13:45 Bob Rossi
2006-06-05 19:56 ` Eli Zaretskii
2006-06-05 19:58   ` Bob Rossi
2006-06-05 20:23     ` Eli Zaretskii
2006-06-05 21:25   ` Daniel Jacobowitz
2006-06-05 21:28     ` Bob Rossi
2006-06-06  3:44     ` Eli Zaretskii
2006-06-05 19:59 ` Daniel Jacobowitz
2006-06-05 20:49   ` 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=20060606020143.GG10045@brasko.net \
    --to=bob_rossi@cox.net \
    --cc=gdb-patches@sources.redhat.com \
    --cc=nickrob@snap.net.nz \
    /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