From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27925 invoked by alias); 18 Nov 2004 01:35:41 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 27853 invoked from network); 18 Nov 2004 01:35:33 -0000 Received: from unknown (HELO hub.ott.qnx.com) (209.226.137.76) by sourceware.org with SMTP; 18 Nov 2004 01:35:33 -0000 Received: from smtp.ott.qnx.com (smtp.ott.qnx.com [10.0.2.158]) by hub.ott.qnx.com (8.9.3/8.9.3) with ESMTP id UAA03013 for ; Wed, 17 Nov 2004 20:58:52 -0500 Received: (from alain@localhost) by smtp.ott.qnx.com (8.8.8/8.6.12) with UUCP id UAA10552 for gdb-patches@sources.redhat.com; Wed, 17 Nov 2004 20:35:32 -0500 Message-Id: <200411180135.UAA10552@smtp.ott.qnx.com> Subject: Re: MI handshaking To: bob@brasko.net (Bob Rossi) Date: Thu, 18 Nov 2004 01:35:00 -0000 From: "Alain Magloire" Cc: alain@qnx.com (Alain Magloire), eliz@gnu.org (Eli Zaretskii), cagney@gnu.org (Andrew Cagney), nick@nick.uklinux.net, gdb-patches@sources.redhat.com In-Reply-To: <20041117173205.GA5350@white> from "Bob Rossi" at Nov 17, 2004 12:32:05 PM MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SW-Source: 2004-11/txt/msg00368.txt.bz2 > > On Wed, Nov 17, 2004 at 10:17:57AM -0500, Alain Magloire wrote: > > > > > > On Sat, Nov 13, 2004 at 10:57:33AM +0200, Eli Zaretskii wrote: > > > > > Date: Fri, 12 Nov 2004 17:57:30 -0500 > > > > > From: Andrew Cagney > > > > > Cc: Bob Rossi , Nick Roberts , > > > > > gdb-patches@sources.redhat.com > > > > > > > > > > > =mi-handshake,versions=[mi1,mi2,mi3],stable=[mi2] > > > > > > > > > > Yes, thanks for the correction with ``=''. But not > > > > > ``versions=[mi1,mi2,mi3]'' that's too much and misleading information. > > > > > > > > > > I think the objective here needs to be to provide as much information as > > > > > possible about what version of GDB and MI is running. Hence the: > > > > > > > > > > version="mi2" > > > > > > > > > > (where hopefully VERSION version is a member of STABLE :-) > > > > > > > > We've been through this discussion, and the only suggestion that > > > > brought a consensus was to print all the supported MI versions, not > > > > just one. Let's not reopen that discussion again, even if the result > > > > looks ``too much and misleading''. (Why ``misleading'', btw?) > > > > > > Yeah, anyways it doesn't really matter for now. GDB only supports one > > > version, and I have a feeling it will stay that way for a long time. > > > > > > > sigh ... sorry for being dense (hopefully this will not be a long thread) > > but why are you keep on saying: "GDB only supports one version" > > for example, I have gdb-6.1.x and I can start > > # gdb -i mi1 > > # gdb -i mi2 > > # gdb -i mi3 > > > > that it is more then one version? > > oops, sorry, I meant to say that GDB supports only 1 stable MI version. > This is only relavent when discussing what GDB should do when the user > starts with 'gdb -i=mi'. > > I see 2 needs stemming from this patch. > > - I need the handshaking to happen before any other I/O. > This allows my front end to determine the protocol that is going to > be used by GDB. > > - Alain, it seems like you need this command to be available after > the fact. Even though this seems unintuitive to me, I understand > that it's not a perfect world, and this info could be useful later > on, especially if you are not responsible for staring GDB. > Yes. Very true, it is not a perfect world but I also think it is rather inconsistent that important information is lost once the screen scrolled away, i.e. no way to retrieve it, beside restarting ... > It seems as if there is two parts to this patch. The first part does the > handshaking, and that takes care of the protocol that should be used. > Here, GDB will give all of the info necessary to help the front end determine > the protocol that it wants to use. For instance, the protocols possible, > the build date, the GDB version, ... > > Also, as a second part, a new MI command could be added, that simply > repeats all of the info determined from the handshaking functionality. > This would allow front ends to query the information later on, if for > some reason it couldn't do it originally. Note however, this would not > repeat the handshaking, and the version of MI being used can not be > changed. > Yes. I did not advocate to be able to change MI versions at runtime. That would be overkill, i.e. it would be simpler to restart gdb then to try to code that complexity with little benifits, IMHO > Would this be OK for everyone? > That would be good, and the proposed format suits me fine mi-version="mi2",... Thanks Bob for looking at this.