From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 124701 invoked by alias); 5 Oct 2016 14:50:00 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 124688 invoked by uid 89); 5 Oct 2016 14:49:59 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy=(unknown) X-HELO: mail-oi0-f48.google.com Received: from mail-oi0-f48.google.com (HELO mail-oi0-f48.google.com) (209.85.218.48) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 05 Oct 2016 14:49:49 +0000 Received: by mail-oi0-f48.google.com with SMTP id n132so210019825oih.1 for ; Wed, 05 Oct 2016 07:49:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=d95etVvbpcRwEby/41HqLa76Vbhq1pIpil6Pi0gKc1A=; b=On5G4/x6g3Vw82kwvPNI7r+QwVqPHHdj12TDPQP05iD8qi/0qPGiv5NW3ZF3zTfTYg EhzOhuW8comcMwv+d17AE+2F/hVlTOtfBOFCvMCVeEiUjI8sDgMn1XG33yY51EPwK3u+ hjjDKSRUg9iPK69cFOCwVvx5OeNDNXAyk4xp9Z3+vHbjBxc+kk0kC3YzCiG7ay3+qJBw ljQVbYBJZ8CVHpTWm98uE7k/vdVcLdhs8AiYMhZv5ew0G38aCGl+QNM3Q5G2eujEdMCL TjosTHe1n6Y1VRrzpjIv9sVqzXkmGIbB5W9T8Teq8eqw+T6CulLL1ehACDbeh8L9baXn c5JQ== X-Gm-Message-State: AA6/9Rmt07RyF0Q0BqCrdeCyk7Z+qdED2VyKZjSRtZlSAWJ953mx5HbQ94O8+kTeCbI5XABH2dKEzHwXA+H/kXjC X-Received: by 10.157.17.5 with SMTP id g5mr6341614ote.42.1475678987689; Wed, 05 Oct 2016 07:49:47 -0700 (PDT) MIME-Version: 1.0 Received: by 10.182.105.167 with HTTP; Wed, 5 Oct 2016 07:49:27 -0700 (PDT) In-Reply-To: References: <20161005092926.GP3223@redhat.com> From: Jason Merrill Date: Wed, 05 Oct 2016 14:50:00 -0000 Message-ID: Subject: Re: C++ PATCH for C++17 class template placeholders To: gcc-patches List Cc: Marek Polacek Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2016-10/txt/msg00248.txt.bz2 On Wed, Oct 5, 2016 at 10:47 AM, Marc Glisse wrote: > On Wed, 5 Oct 2016, Jason Merrill wrote: >> On Wed, Oct 5, 2016 at 5:29 AM, Marek Polacek wrote: >>> On Wed, Oct 05, 2016 at 08:58:08AM +0200, Marc Glisse wrote: >>>> On Tue, 4 Oct 2016, Jason Merrill wrote: >>>> >>>>> C++17 adds the ability to omit the template arguments for a class >>>>> template when declaring a variable with an initializer, much like auto >>>>> but supporting a wider variety of initialization. This is intended to >>>>> replace functions like make_tuple. >>>> >>>> Nice. Is there a macro to test for this feature? I couldn't find it in >>>> the >>>> latest sg10 list. >>> >>> And in a similar vein, is there a macro for Selection statements with >>> initializer? Can't find it anywhere. >> >> Not currently, for either. The rationale for not defining macros for >> some features is that for convenience features like this, anyone >> concerned about portability will just write code the old way. > > Thanks. Sadly, this ignores the case of a library that wants to provide an > explicit deduction guide for its own types to progressive users compiling > with a C++17 compiler, without preventing C++14 users from using the library > the old way. True, that's a compelling argument for having a macro for deduction guides. I'll propose that to SG10. Jason