220 9905 <877g7qm4yd.fsf@euclid.axiomatics.org> article
Path: news.gmane.org!not-for-mail
From: Gabriel Dos Reis <gdr@axiomatics.org>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: auto variable templates?
Date: Wed, 19 Mar 2014 11:14:02 -0700
Organization: axiomatics.org
Lines: 55
Approved: news@gmane.org
Message-ID: <877g7qm4yd.fsf@euclid.axiomatics.org>
References: <ec829ec4-9d4e-4d5c-8673-a58d46fec41b@isocpp.org>
	<CAOfiQqkf4N3Pga8V7n6as-CBdWWGJeKh-0s8ONxsdpRtamo-Cg@mail.gmail.com>
	<CANu6V4ViH09LeqDs_Vc2tivK97=6yThejGLJ6+m0dRx0Fu+vRQ@mail.gmail.com>
	<CAOfiQq=-DRrjX2sAxpqPhhorg4ARW9q4vNA=D5k7wHzikjMiBg@mail.gmail.com>
	<CANu6V4WZWY0+EWY=1_UWN1Yi8202mwCdiQQiLhY-hGFLCtAR6g@mail.gmail.com>
	<878usaa8hz.fsf@euclid.axiomatics.org>
	<93E854CB-24C9-49ED-BE88-1A43D0FD715A@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
Content-Transfer-Encoding: quoted-printable
X-Trace: ger.gmane.org 1395252839 18513 80.91.229.3 (19 Mar 2014 18:13:59 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Wed, 19 Mar 2014 18:13:59 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBCSYNQUB2UHRB3N4U6MQKGQENAFWYGQ@isocpp.org Wed Mar 19 19:14:08 2014
Return-path: <std-proposals+bncBCSYNQUB2UHRB3N4U6MQKGQENAFWYGQ@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-yh0-f71.google.com ([209.85.213.71])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCSYNQUB2UHRB3N4U6MQKGQENAFWYGQ@isocpp.org>)
	id 1WQL0A-0005p1-P7
	for gclcip-std-proposals@m.gmane.org; Wed, 19 Mar 2014 19:14:07 +0100
Original-Received: by mail-yh0-f71.google.com with SMTP id a41sf23661597yho.6
        for <gclcip-std-proposals@m.gmane.org>; Wed, 19 Mar 2014 11:14:05 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:from:to:subject:in-reply-to:organization
         :references:sender:date:message-id:lines:mime-version
         :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
         :content-transfer-encoding;
        bh=RU1jkrdK82XQ5hKbaTTFbivsoVyDe5qbdPEpCp2RkI8=;
        b=TFZAKLra+c934RnL9cYDgN7FvNqNWhC0ukk9t7Lu9eL2Xk57hB+cj3fycd8sxKd4Y4
         5XwtinSQap3DqnJl4AN58jfBsiXTiIVPD3fsNcFc/T/H8sVU4jmqjMdQwEwqHsod28T7
         8VaYF7AwF8Iwk6V7r8btaMU4JKhr2Tu9oFvHbeKuU93r8HKZ0QJncRazvPiVJApidflP
         kcRjzZZyce0083RMbU0QLDVwiaHXQY9afUM42E96GbBx/qFhOA3durz7hfhqAtudeSrV
         DtxifufCQJz652owaX+SOI15+5KA64icgyuCy94jk7DdxWWpYlqwYlev 
X-Gm-Message-State: ALoCoQkoS01pqyhLdVeyPwugTj+3wLatnnsy+BE+Oh8FShhbmtSgNVMWHxqsaei2d17+pBWEbHaM
X-Received: by 10.58.88.136 with SMTP id bg8mr6166324veb.21.1395252845817;
        Wed, 19 Mar 2014 11:14:05 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.182.191.103 with SMTP id gx7ls988672obc.25.gmail; Wed, 19 Mar
 2014 11:14:04 -0700 (PDT)
X-Received: by 10.60.54.228 with SMTP id m4mr3863450oep.29.1395252844650;
        Wed, 19 Mar 2014 11:14:04 -0700 (PDT)
Original-Received: from mail.axiomatics.org (www.axiomatics.org. [66.228.53.191])
        by mx.google.com with ESMTP id kg1si23450729oeb.41.2014.03.19.11.14.04
        for <std-proposals@isocpp.org>;
        Wed, 19 Mar 2014 11:14:04 -0700 (PDT)
Received-SPF: pass (google.com: best guess record for domain of gdr@axiomatics.org designates 66.228.53.191 as permitted sender) client-ip=66.228.53.191;
Original-Received: from euclid.axiomatics.org (localhost [IPv6:::1])
	by mail.axiomatics.org (Postfix) with ESMTP id 0C950E741
	for <std-proposals@isocpp.org>; Wed, 19 Mar 2014 11:14:04 -0700 (PDT)
In-Reply-To: <93E854CB-24C9-49ED-BE88-1A43D0FD715A@gmail.com> (David Krauss's
	message of "Sun, 16 Mar 2014 16:00:02 +0800")
Original-Sender: gdr@axiomatics.org
Original-Lines: 40
X-Original-Sender: gdr@axiomatics.org
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 best guess record for domain of gdr@axiomatics.org designates 66.228.53.191
 as permitted sender) smtp.mail=gdr@axiomatics.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:9905
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/9905>

David Krauss <potswa@gmail.com> writes:

| On 2014=E2=80=9303=E2=80=9316, at 3:49 PM, Gabriel Dos Reis <gdr@axiomati=
cs.org>
| wrote:
|=20
|     The general model of C++ templates, since day 1, is that if decl
|     is a
|     valid declaration, then
|    =20
|     =C2=A0=C2=A0template <parameter-list> decl
|    =20
|     is also a valid declaration.
|=20
|=20
| Well, Johannes=E2=80=99 code is specifically a counterexample to that rul=
e,
| because the error is in the parameter-list.

I am not sure why that is a counter example:  if the parameter is
non-sensical, it can't be a declaration.

| It seems fairly obvious that an invalid template parameter declaration
| is diagnosed when translating it,

Yes, which is why I don't understand why it is a counterexample.

| not at instantiation. If his code
| exposes a defect, it belongs to name lookup, not the instantiation
| process.=20

I am not quite sure what you think is the defect.

| (Should=C2=A0that name be accessible, if the template had a friend
| declaration? However it is not a friend in the example.)
|=20
| His argument, though, seems to be that there is a slippery slope of
| allowing things that aren=E2=80=99t specifically specified. I don=E2=80=
=99t buy it.

I don't understand either.

-- Gaby

--=20

---=20
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 e=
mail 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-proposa=
ls/.

.
