From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13407 invoked by alias); 13 Feb 2020 02:28:07 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 13397 invoked by uid 89); 13 Feb 2020 02:28:06 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=Timing-wise, H*f:sk:f16e388, H*i:sk:f16e388, H*MI:sk:f16e388 X-HELO: mail-qk1-f196.google.com Received: from mail-qk1-f196.google.com (HELO mail-qk1-f196.google.com) (209.85.222.196) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 13 Feb 2020 02:28:04 +0000 Received: by mail-qk1-f196.google.com with SMTP id c20so4286092qkm.1 for ; Wed, 12 Feb 2020 18:28:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=5La7IhDV4dCyh+fTdVrkDXWiPhCyfRh6M4YHTRWp+Po=; b=MPjUYFQa0CABhl4TiIr/dQ/72vFFfJQIlmsc0NUmJ5d384R1YjfQtn+pEpo5R11u38 nH0hBGTUVZHa9MsjHXcJ1d0vdMq2wtQRc7mD9Dd1AYLCAXpuUQB/rsh5S3nO6zi509LO dqtohaW6rIglUhAsFLFs+YTsT48S79aJZhYBapJ88aK/IB2VnISn7X1yD+AQ1oJEEC/n CTmi5Nh6D5ik9PqDzvwig8RsRPa7Daum3ehMdqxreJ+MXY7QALhl/tfKfJuUUpyq0bCT 3bK49095VtMU7pfgLrMv5xweyUKtXRm7mBMFag2NAxT2FSPFMt2lZFhnUC9dnb3vesx6 mziA== Return-Path: Received: from [192.168.1.103] (173-230-163-45.cable.teksavvy.com. [173.230.163.45]) by smtp.gmail.com with ESMTPSA id c26sm610685qtn.19.2020.02.12.18.28.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 12 Feb 2020 18:28:02 -0800 (PST) Subject: Re: [EXTERNAL] Re: GCC selftest improvements To: David Malcolm , Modi Mo , Eric Gallager , Pedro Alves Cc: Gabriel Dos Reis , Andrew Dean , "gcc@gcc.gnu.org" , "ro@CeBiTec.Uni-Bielefeld.DE" , "mikestump@comcast.net" , "law@redhat.com" , "jason@redhat.com" , Jonathan Wakely , Richard Biener References: <2f583ca8-56ea-460f-bcaf-c70108451aa8@palves.net> From: Nicholas Krause Message-ID: Date: Thu, 13 Feb 2020 02:28:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2020-02/txt/msg00128.txt.bz2 On 2/12/20 8:53 PM, David Malcolm wrote: > On Thu, 2020-02-13 at 00:49 +0000, Modi Mo wrote: >> Hey all, >> >> I'm picking this work up from Andrew. Last time it was decided that >> the timing wasn't right to upgrade the minimum version to C++11. Is >> the timing better now to get this change through? >> >> I've attached the patch Andrew prepared. Can I get feedback on the >> change and some help testing on the broader range of >> architectures/platforms? >> >> Thanks, >> Modi > Hi Modi > > Thanks for the patch. > > Some nitpicks: > > Timing-wise, the GCC developer community is focusing on gcc 10 > bugfixing right now (aka "stage 4" of the release cycle). So this > patch won't be suitable to commit to master until stage 1 of the > release cycle for gcc 11 (in April, hopefully). > > But yes, it's probably a good idea to get feedback on the patch given > the breadth of platforms we support. > > The patch will need an update to the docs; search for > "Tools/packages necessary for building GCC" in gcc/doc/install.texi, > which currently has some paragraphs labelled: > @item ISO C++98 compiler > that will need changing. > > I think Richi mentioned that the minimum gcc version should be 4.8.2 as > he recalled issues with .1, so maybe the error message and docs should > reflect that? > https://gcc.gnu.org/ml/gcc/2019-10/msg00180.html > > > This may be opening a can of worms that should wait until we're done > with the GCC 10 release, but there's probably an eventual wider > discussion about what parts of C++11 we should use; pragmatically we're > also limited by gengtype, the tool that scrapes the source code looking > for garbage-collector markup, as that imposes a subset of C++ on us. > > I'd love to be able to rely on move semantics and thus use e.g. > std::unique_ptr to capture more of our memory-management in the type > system (we currently have a limited C++98-compatible implementation in > the tree in the form of gnu::unique_ptr). > > How much of the stdlib do we see ourselves using? I think we've > avoided std::string and the <<-style stream APIs; is there a case for > using some of the other data structures? > > For reference, see > https://gcc.gnu.org/codingconventions.html#Cxx_Conventions > (looks like that page would need an update also for the version bump; > it's in the website git repo IIRC) > > Hope this is constructive. > Dave Dave, I recall originally bringing up the move. From memory I recall that these were the features we wanted or the people in the discussion wanted from C++11: 1. Better Rounding and Stricter Integer and other number type rules 2. Template Aliasing 3. Auto and for each style loops 4. Move and R Value Semantics There was a little discussion about lambas and anonymous functions but I don't recall that being clear in terms of one of the above areas for sure. Maybe that helps, Nick