From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19721 invoked by alias); 31 Aug 2004 12:55:54 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 19596 invoked from network); 31 Aug 2004 12:55:51 -0000 Received: from unknown (HELO nile.gnat.com) (205.232.38.5) by sourceware.org with SMTP; 31 Aug 2004 12:55:51 -0000 Received: from localhost (localhost [127.0.0.1]) by nile.gnat.com (Postfix) with ESMTP id D2FDAF2E52; Tue, 31 Aug 2004 08:55:50 -0400 (EDT) Received: from nile.gnat.com ([127.0.0.1]) by localhost (nile.gnat.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 15157-01-3; Tue, 31 Aug 2004 08:55:50 -0400 (EDT) Received: from [127.0.0.1] (ppp3.gnat.com [205.232.38.213]) by nile.gnat.com (Postfix) with ESMTP id 80A2BF2E50; Tue, 31 Aug 2004 08:55:47 -0400 (EDT) Message-ID: <41347558.5090405@gnat.com> Date: Tue, 31 Aug 2004 13:06:00 -0000 From: Robert Dewar User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040803 MIME-Version: 1.0 To: Zack Weinberg Cc: Richard Henderson , Laurent GUERBY , Florian Weimer , gcc@gcc.gnu.org Subject: Re: Ada policy References: <10408301022.AA24170@vlsi1.ultra.nyu.edu> <1093863754.17130.27.camel@pc.site> <20040830090622.GD30497@sunsite.ms.mff.cuni.cz> <1093888894.17130.45.camel@pc.site> <87zn4czaql.fsf@deneb.enyo.de> <1093896230.17130.95.camel@pc.site> <87657074by.fsf@codesourcery.com> <20040830205702.GB2566@redhat.com> <4133A3D2.80202@gnat.com> <87brgs5dzu.fsf@codesourcery.com> <4133D371.5030203@gnat.com> <87y8jw3vo1.fsf@codesourcery.com> <4133E786.8060703@gnat.com> <87r7po3sip.fsf@codesourcery.com> <4133F092.2030102@gnat.com> <8765703qb4.fsf@codesourcery.com> In-Reply-To: <8765703qb4.fsf@codesourcery.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at nile.gnat.com X-SW-Source: 2004-08/txt/msg01614.txt.bz2 Zack Weinberg wrote: > I continue to be disappointed that an arbitrary standard-conforming > Ada compiler cannot be used. Oh, and by the way, I hope this does not come as a drastic surprise to you, but there are no standard-conforming Ada compilers, not 100% conforming, since a single bug contradicts that status, and I have to report that especially in the case of previous versions of GNAT, we know of quite a few bugs :-) (as a marketing phrase, we have sometimes used the tag line "there is only one bug in GNAT", but I am afraid this is not strictly true. The point is that working around bugs in all previous versions of GNAT (not to mention bugs in all previous versions of all alledgedly standard Ada compilers) would be somewhat infeasible. Again, suppose that you were required to code the g++ front end in C++ subject to the requirement that it compile correctly on all previous versions of C++ from all vendors, including all versions of g++, well that would be tricky :-) I suppose you could just degrade to coding in C after all, but the whole point of moving to C++ for the front end of g++ (which by the way seems a perfectly reasonable step to me), would be to take advantage of some of the important features of C++. Yes, discussion would be needed (and some has gone on) on what subset would be appropriate, and you can see the discussion ranges from quite conservative (me for example) to much more liberal, but certainly even if you take a very conservative position, you cannot expect to be compatible with all previous versions of c++ compilers, and I would not argue for using this as a criterion. Certainly in the case of Ada and GNAT, we had lots of discussions about the subset to be used for the compiler, and it is actually fairly small (e.g. avoiding tasking, controlled types, tagged types etc). P.S. Once upon a time (actually I think it was in 1992), GNAT was bootstrapped with another compiler (the Alsys compiler on SunOS), but once that bootstrap was complete, we only ever regarded bootstrapping with GNAT as the criterion for moving forward.