From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11619 invoked by alias); 5 Mar 2003 07:19:31 -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 11611 invoked from network); 5 Mar 2003 07:19:31 -0000 Received: from unknown (HELO uniton.integrable-solutions.net) (62.212.99.186) by 172.16.49.205 with SMTP; 5 Mar 2003 07:19:31 -0000 Received: from uniton.integrable-solutions.net (localhost [127.0.0.1]) by uniton.integrable-solutions.net (8.12.3/8.12.3/SuSE Linux 0.6) with ESMTP id h257GaH2031482; Wed, 5 Mar 2003 08:16:36 +0100 Received: (from gdr@localhost) by uniton.integrable-solutions.net (8.12.3/8.12.3/Submit) id h257GagX031481; Wed, 5 Mar 2003 08:16:36 +0100 X-Authentication-Warning: uniton.integrable-solutions.net: gdr set sender to gdr@integrable-solutions.net using -f To: Zack Weinberg Cc: dewar@gnat.com (Robert Dewar), mrs@apple.com, gcc@gcc.gnu.org, tromey@redhat.com Subject: Re: Putting C++ code into gcc front end References: <20030305034359.46146F28EB@nile.gnat.com> <87y93utmlk.fsf@egil.codesourcery.com> From: Gabriel Dos Reis In-Reply-To: <87y93utmlk.fsf@egil.codesourcery.com> Organization: Integrable Solutions Date: Wed, 05 Mar 2003 07:57:00 -0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2003-03/txt/msg00316.txt.bz2 Zack Weinberg writes: | dewar@gnat.com (Robert Dewar) writes: | | > Seriously, I think it is reasonable at this stage to admit C++ more | > widely. Yes, it may complicate build processes a bit, but gcc is a | > huge complex program, and anything that can make it easier to manage | > such a large program by improving abstraction seems a clear win to me. | | C++ compilers and runtime libraries that implement the full language | as it was standardized are still rare. Compilers that implement a | language called "C++" that is incompatible with standard C++ are still | common. I think that is too negative to reflect reality. Certainly compilers out there vary in what they implement of the recent template technology, but: * We don't need the full language and full runtime support (in effect, G++ was notorously known not to implement the full language nor to have a full implementation of the library nor to have a correect implementation of the language, still it was, is and will coontinue to be widely used); * C++ is not reduced to templates; * even from the templates, there is a fair core that has been stable for a decade -- even GCC-2.7.x supports basic template constructs; * there is a well-formed corpus of C++ well-implemented by compilers out there. That corpus is the not the most recent innovative features of the langage but successful projects in C++ don't always use the most recent features. There are lots of successul C++ projects out there, and they are not experimental ones. CFront was written in C++, and at the time C90 compilers were not as comon as today. Still I can't say there was so much Fear, Uncertainty and Doubt about C++ use as an implementation language to impmlement CFront. Let's get rid of the Fear, Uncertainty and Doubt spread out by the urban legend and acknowledge the fact that C++ can be used to implement efficiently major parts of something as complex as a compiler collection namemd GCC. -- Gaby