From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18644 invoked by alias); 6 Oct 2004 16:22:29 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 18618 invoked from network); 6 Oct 2004 16:22:26 -0000 Received: from unknown (HELO lakermmtao09.cox.net) (68.230.240.30) by sourceware.org with SMTP; 6 Oct 2004 16:22:26 -0000 Received: from white ([68.9.64.121]) by lakermmtao09.cox.net (InterMail vM.6.01.03.04 201-2131-111-106-20040729) with ESMTP id <20041006162226.DVSW15258.lakermmtao09.cox.net@white>; Wed, 6 Oct 2004 12:22:26 -0400 Received: from bob by white with local (Exim 3.35 #1 (Debian)) id 1CFEYb-0003BN-00; Wed, 06 Oct 2004 12:22:25 -0400 Date: Wed, 06 Oct 2004 16:31:00 -0000 From: 'Bob Rossi' To: Dave Korn Cc: 'Eli Zaretskii' , gdb@sources.redhat.com Subject: Re: probing GDB for MI versions Message-ID: <20041006162225.GA12213@white> Mail-Followup-To: Dave Korn , 'Eli Zaretskii' , gdb@sources.redhat.com References: <20041006113916.GC11747@white> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.28i X-SW-Source: 2004-10/txt/msg00130.txt.bz2 On Wed, Oct 06, 2004 at 12:50:34PM +0100, Dave Korn wrote: > > -----Original Message----- > > From: gdb-owner On Behalf Of Bob Rossi > > Sent: 06 October 2004 12:39 > > > Unfortunately this topic is on two different threads. I feel > > badly that I > > am wasting your time here with bad descriptions of the > > "catch-22". This > > is to help make my opinion clear on why it is a "catch-22" and not > > possible. > > > > The front end has parsers for different versions of GDB's > > MI protocol. > > The parser for MI2 may not work for the MI3 protocol. > > The parser for the MI3 protocol may not work for the MI2 protocol. > > The front end *can not* start up GDB just by using -interpreter=mi > > because it doesn't know what parser to use in this situation. > > Can we agree on this point for starters? > > No, we can't. As long as the output from the -mi-version MI command stays > in the same format, you can always parse that and determine which version to > use. Dave, you do not understand the problem at all. I do not appreciate your defininative answer, especially since it is incorrect. The actual MI output syntax is capable of changing between MI versions. If the MI4 output syntax (grammar) has an incompatible change with MI3, then * the MI3 parser will not even be capable of parsing and building a parse tree for the MI4 protocol. * the MI4 parser will not even be capable of parsing and building a parse tree for the MI3 protocol. It is not possible to understand the output of the command no matter how simple it is. If there is no parse tree, then there is no way to understand the output from GDB. > Everything else can change. You can start up with an utterly minimal, > unintelligent parser, that knows nothing except how to send a -mi-version > command and parse the output; that parser can then direct one of your > version-dependent parsers to take over. I don't understand the concept of an "utterly minimal unintelligent parser". That is rediculous. I am generating a parser from the grammar. There absolutly needs to be a way for the front end to ask GDB what versions of the MI protocol it supports. There is no way the front end can ask GDB what protocols it supports if it needs to talk to it with an MI protocol. Understood? Bob Rossi