Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Andrew Cagney <ac131313@redhat.com>
To: Jim Ingham <jingham@apple.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [patch rfa:doco rfc:NEWS] mi1 -> mi2; rm mi0
Date: Tue, 01 Oct 2002 15:10:00 -0000	[thread overview]
Message-ID: <3D9A1D3F.9000104@redhat.com> (raw)
In-Reply-To: <C7B391CC-D580-11D6-BB61-00039379E320@apple.com>

> I am a little confused here.  One of the design points for the MI is the ability to add information to the commands without requiring a change in the clients (unless, of course, they wanted to use the new information).  That should mean that we have set up a situation where we can change the mi in substantial ways without having to demand that clients rewrite their code to use MI.  Shouldn't that mean that we can go a long way without having to make incompatible changes?  And so, imposing the burden on ourselves of not jerking clients around all the time would not be such a big deal, and perhaps worth the inconvenience it would cause the MI developers?

Yes, that's the theory.  There are always problems though:

- for some commands, their output is simply bogus.  See gdb/672
 > > - var-update syntax is:
   ^done,changelist={name="var3",in_scope="true",type_changed="false",
      name="var2",in_scope="true",type_changed="false"}
Notice how a single tuple contains several "name" fields :-(  JeffJ's 
currently comming up with a patch that will preserve the current behavior.

- some parts of the interface were technically flawed.
The breakpoint event stuff that KeithS changed (but not in a backward 
compatible way :-().  Not fixing this, further entrenches a flawed model 
:-(  The only error in that change was not preserving the old output 
when mi1 :-(

Fixing either of these involves significant change to MI's output, but 
it, I think, is for the better.

> As a client of the MI, this means that in a year or so I have to expect to rewrite code that works just fine, because you have deleted the support for it from gdb; or carry the burden of maintaining mi1 as patches to the gdb sources.  And longer term, I can expect to do this again next year, unless things "stabilize" before then, which they may or may not do.  This doesn't sound appetizing to me.
> 
> The MI is a public interface to gdb - and the only really useful one we offer to external clients who are not Human beings right now.  It has been around in gdb, and we have been using it contentedly, for a couple of years now.  A retroactively stated policy of instability in this interface (including the vanishing of useful variants at odd intervals) seems very unfair to those who have been using it right along, as well as being one which can only slow its uptake in general.

What we're seeing here is the fallout that results from a number of 
players creating localized GDBs.  GDB developers have started looking at 
the underlying problems that Apple and others encountered, and are 
trying to fix them.  Regretably, per above, this is going to need some 
short term change.

It is just a shame that this process wasn't started long ago.

Andrew



  reply	other threads:[~2002-10-01 22:10 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1033404264.17743.ezmlm@sources.redhat.com>
2002-09-30 17:48 ` Jim Ingham
2002-10-01  9:29   ` Andrew Cagney
2002-10-01 10:34     ` Jim Ingham
2002-10-01 13:25       ` Andrew Cagney
2002-10-01 14:01         ` Jim Ingham
2002-10-01 15:10           ` Andrew Cagney [this message]
2002-10-01 15:46             ` Jim Ingham
2002-10-01 16:39               ` Keith Seitz
2002-10-01 17:45                 ` Jim Ingham
2002-10-02  7:58                   ` Keith Seitz
2002-10-02 10:49                     ` Jim Ingham
2002-10-25 14:48                       ` Andrew Cagney
2002-10-01 23:25                 ` Jason Molenda
2002-10-02 10:22                 ` Stan Shebs
     [not found] <1035593825.16489.ezmlm@sources.redhat.com>
2002-10-25 18:22 ` Jim Ingham
2002-09-29 11:14 Andrew Cagney
2002-09-29 12:55 ` Daniel Jacobowitz
2002-09-29 13:19   ` Andrew Cagney
2002-09-29 14:37     ` Daniel Jacobowitz
2002-09-29 14:46       ` Andrew Cagney
2002-09-29 21:55         ` Daniel Jacobowitz
2002-09-30  8:03           ` Andrew Cagney
2002-09-30  8:16             ` Daniel Jacobowitz
2002-09-30 15:06               ` Andrew Cagney
2002-09-30 15:36                 ` Daniel Jacobowitz
2002-09-29 22:01 ` Eli Zaretskii
2002-09-30 15:14   ` Andrew Cagney
2002-09-30 22:13     ` Eli Zaretskii
2002-10-01 14:26 ` Andrew Cagney

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=3D9A1D3F.9000104@redhat.com \
    --to=ac131313@redhat.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=jingham@apple.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