220 9272 <lddjn0$mgs$1@ger.gmane.org> article
Path: news.gmane.org!not-for-mail
From: Matthew Woehlke <mw_triad@users.sourceforge.net>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: add "implicit" keyword?
Date: Tue, 11 Feb 2014 11:39:09 -0500
Lines: 38
Approved: news@gmane.org
Message-ID: <lddjn0$mgs$1@ger.gmane.org>
References: <ldauqr$63v$1@ger.gmane.org> <CAGg_6+NJgqxP2B+J0oQ4xW1BqpeeSV4bqw_3XFODYAy0+9V4UA@mail.gmail.com> <ldb114$13r$1@ger.gmane.org> <E35FEFAC-824A-4048-8304-754825C0D27E@gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
X-Trace: ger.gmane.org 1392136764 23438 80.91.229.3 (11 Feb 2014 16:39:24 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Tue, 11 Feb 2014 16:39:24 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBCO5FYHBU4ERBOVE5GLQKGQENL66H6A@isocpp.org Tue Feb 11 17:39:30 2014
Return-path: <std-proposals+bncBCO5FYHBU4ERBOVE5GLQKGQENL66H6A@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-wi0-f199.google.com ([209.85.212.199])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCO5FYHBU4ERBOVE5GLQKGQENL66H6A@isocpp.org>)
	id 1WDGMl-00085q-8I
	for gclcip-std-proposals@m.gmane.org; Tue, 11 Feb 2014 17:39:23 +0100
Original-Received: by mail-wi0-f199.google.com with SMTP id hm4sf10150638wib.2
        for <gclcip-std-proposals@m.gmane.org>; Tue, 11 Feb 2014 08:39:22 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:to:from:subject:date:lines:message-id:references
         :mime-version:user-agent:in-reply-to:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:list-post:list-help:list-archive:list-subscribe
         :list-unsubscribe:content-type;
        bh=hRTi3Gkr1XNXZ+k10dBLpoQBCI8MuHfgiD6cT/UdgcU=;
        b=Qbl9oyZbORUNkSfWP0+ZN4vhNJ7QyrrD58lH1g4w7PK0yYWNggp+X9uQqQl17L/KjX
         Tni2Fa/BbcMRggYSZTv4dPwxCBsL3NNR76c7z/I9ybxpux79LEpmeCeiV4X8JQRhb4iW
         is368XawD7EqZ1nVoGZ3KcYKsqyrQhu6TTHFVQ6KjiroAIBpyXaZGyfyeQ9wkDk7Mr33
         JmPjbh8msXLor+giBMBafxPtURFBMqgzwF9vrEVqSzXqwNTiMfROCEdmpsB6d8F2uduk
         gfm8xxowq8prasb4F67kvcsAWXakPc7/0/s87RtXSw1Uqxz2zJLo69RRUO8xcWWbdRHW
         STzA==
X-Gm-Message-State: ALoCoQmpOe+HiemxCl3Ca5iQpxflyXlvgiXRyhu51P+Nwore6wxpNcKl6P02e6le+TI8yhSK/k6E
X-Received: by 10.112.247.68 with SMTP id yc4mr233719lbc.16.1392136762756;
        Tue, 11 Feb 2014 08:39:22 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.152.224.33 with SMTP id qz1ls338083lac.37.gmail; Tue, 11 Feb
 2014 08:39:21 -0800 (PST)
X-Received: by 10.112.135.233 with SMTP id pv9mr781399lbb.69.1392136761761;
        Tue, 11 Feb 2014 08:39:21 -0800 (PST)
Original-Received: from plane.gmane.org (plane.gmane.org. [80.91.229.3])
        by mx.google.com with ESMTPS id ap10si10314168lac.80.2014.02.11.08.39.21
        for <std-proposals@isocpp.org>
        (version=TLSv1 cipher=RC4-SHA bits=128/128);
        Tue, 11 Feb 2014 08:39:21 -0800 (PST)
Received-SPF: pass (google.com: domain of gclcip-std-proposals@m.gmane.org designates 80.91.229.3 as permitted sender) client-ip=80.91.229.3;
Original-Received: from list by plane.gmane.org with local (Exim 4.69)
	(envelope-from <gclcip-std-proposals@m.gmane.org>)
	id 1WDGMj-000859-26
	for std-proposals@isocpp.org; Tue, 11 Feb 2014 17:39:21 +0100
Original-Received: from tripoint.kitware.com ([66.194.253.20])
        by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
        id 1AlnuQ-0007hv-00
        for <std-proposals@isocpp.org>; Tue, 11 Feb 2014 17:39:21 +0100
Original-Received: from mw_triad by tripoint.kitware.com with local (Gmexim 0.1 (Debian))
        id 1AlnuQ-0007hv-00
        for <std-proposals@isocpp.org>; Tue, 11 Feb 2014 17:39:21 +0100
X-Injected-Via-Gmane: http://gmane.org/
Original-Lines: 29
Original-X-Complaints-To: usenet@ger.gmane.org
X-Gmane-NNTP-Posting-Host: tripoint.kitware.com
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0
In-Reply-To: <E35FEFAC-824A-4048-8304-754825C0D27E@gmail.com>
X-Original-Sender: mw_triad@users.sourceforge.net
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of gclcip-std-proposals@m.gmane.org designates 80.91.229.3 as
 permitted sender) smtp.mail=gclcip-std-proposals@m.gmane.org
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <http://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <http://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <http://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:9272
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/9272>

On 2014-02-11 01:19, David Krauss wrote:
> Since implicit is always implicit, it can always be specified by lack
> of specification.

How would this achieve the desired goal? I admit I am not a compiler 
writer, but I expect most compilers have already run through 
preprocessing before the stage where a diagnostic for unmarked implicit 
methods could occur.

> Fortunately, the preprocessor provides the user with the tools to
> expressively specify nothing:
>
> #define implicit
>
> This is stylistically fine, completely portable, and easy to
> understand (given a comment). It doesn't break anything except use of
> implicit as an identifier, which the proposal does too.

No, (as Thiago also points out) this is *far* worse than my proposal, 
which was to treat "implicit" as a keyword *only where it can be used as 
such*. Which are also, I believe, locations where already a type or 
identifier would be an error, which means that my proposal won't and 
can't break existing code. (Even code that already does e.g. like you 
propose, though of course the proposed diagnostic would not work in that 
case.) Whereas yours breaks any code that uses 'implicit' as a type 
and/or identifier.

-- 
Matthew

-- 

--- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.

.
