From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19351 invoked by alias); 17 Dec 2013 02:29:23 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 19336 invoked by uid 89); 17 Dec 2013 02:29:22 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wi0-f176.google.com Received: from mail-wi0-f176.google.com (HELO mail-wi0-f176.google.com) (209.85.212.176) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 17 Dec 2013 02:29:21 +0000 Received: by mail-wi0-f176.google.com with SMTP id hq4so3058083wib.9 for ; Mon, 16 Dec 2013 18:29:18 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.194.235.230 with SMTP id up6mr17013783wjc.30.1387247358037; Mon, 16 Dec 2013 18:29:18 -0800 (PST) Received: by 10.217.90.70 with HTTP; Mon, 16 Dec 2013 18:29:17 -0800 (PST) In-Reply-To: <52ADA077.7020406@tx.technion.ac.il> References: <52ADA077.7020406@tx.technion.ac.il> Date: Tue, 17 Dec 2013 02:29:00 -0000 Message-ID: Subject: Re: [C++] System Requirements From: Andrew Pinski To: Michael Veksler Cc: Ben Longbons , GDB Development Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2013-12/txt/msg00040.txt.bz2 On Sun, Dec 15, 2013 at 4:28 AM, Michael Veksler wrote: > On 14/12/13 02:40, Ben Longbons wrote: >> >> >> >> NetBSD 6.1.1 (2013-08-22): gcc 4.8.1 >> NetBSD 5.1 (2010-11-19): gcc 3.3.6 >> >> OpenBSD 5.4 (2013-11-01): gcc 4.2.1 >> OpenBSD 4.7 (2010-05-19): gcc 3.3.5 >> >> > I recommend to avoid gcc versions prior to gcc-3.4. Over a decade ago I had > to port code from gcc-3.2 to gcc-3.4 > without losing support for gcc-3.2. Even though the code was much smaller > than gdb it was a pain to support > both versions in parallel: > 1. gcc-3.2 has an old C++ parser and supports a dialect of C++ which > predates ISO C++. > 2. gcc-3.2 does not have namespace > 3. Requires STL as a separate library > 4. Containers of the STL libraries do not understand allocators, and can't > be taught to due to limitations in old C++ These above 4 are incorrect as the new libstdc++ came in with 3.0 and that is when namespace support came in. > 5. Templates have significantly different semantics, and define a one-pass > parsing (unlike 2 pass in ISO C++). It is still one pass parsing, just the semantics is done at two different times. I think we should support anything 3.0 and above. Since we won't be using STL or templates that much. Thanks, Andrew Pinski > > Avoid gcc-3.2 > > Michael