220 24315 <56BC51E9.10200@cern.ch> article
Path: news.gmane.org!not-for-mail
From: Axel Naumann <Axel.Naumann@cern.ch>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: variant construction/assignment from braced value
Date: Thu, 11 Feb 2016 10:18:33 +0100
Lines: 168
Approved: news@gmane.org
Message-ID: <56BC51E9.10200@cern.ch>
References: <9A41B088-08C0-4222-8558-FA734F61BDE5@gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: multipart/alternative;
	boundary="------------000606080509080901030803"
X-Trace: ger.gmane.org 1455182259 12503 80.91.229.3 (11 Feb 2016 09:17:39 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Thu, 11 Feb 2016 09:17:39 +0000 (UTC)
Cc: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
To: David Krauss <potswa@gmail.com>,
	=?UTF-8?Q?Agust=c3=adn_K-ballo_Berg=c3=a9?= <kaballo86@hotmail.com>
Original-X-From: std-proposals+bncBCBIFNO6TUPRBH5D6G2QKGQERDEZW2A@isocpp.org Thu Feb 11 10:17:22 2016
Return-path: <std-proposals+bncBCBIFNO6TUPRBH5D6G2QKGQERDEZW2A@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-pa0-f72.google.com ([209.85.220.72])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCBIFNO6TUPRBH5D6G2QKGQERDEZW2A@isocpp.org>)
	id 1aTnNJ-0005y1-IO
	for gclcip-std-proposals@m.gmane.org; Thu, 11 Feb 2016 10:17:21 +0100
Original-Received: by mail-pa0-f72.google.com with SMTP id fl4sf88111366pad.2
        for <gclcip-std-proposals@m.gmane.org>; Thu, 11 Feb 2016 01:17:21 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=subject:to:references:cc:from:message-id:date:user-agent
         :mime-version:in-reply-to:content-type:spamdiagnosticoutput
         :spamdiagnosticmetadata:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=yVL/yOaWHg5VrTj6lA7i2M4NCGjLsEeQHaOXxYuifus=;
        b=fNMmD8cbOaciN2dbWcAihOEgvZ21k2HMpj8Re4FM1nF4lIQvL9K1iTV9KALXSVlgkf
         DdYxD4M4AWoieJ3TBTO56U5sNoVEA8bMiTqT7Dqs1+FjVdKgJeXBi/CrVdk0f9uI0Wmg
         DIlh/W+H5gCw6jeSSK6waEm9CWdMJYzojzyvpABrKarAqYClazrDJexVBerbjTeXPPR+
         PkCuj5ok8NRrr+sqEmARNhHuYja8Wbp4sP1XU5lHxpG7gbCMChgcN4EOASX3jhmjDwYQ
         HNK40lBDhXYsA6MSUoAuJBNcKUAvsP 
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:subject:to:references:cc:from:message-id:date
         :user-agent:mime-version:in-reply-to:content-type
         :spamdiagnosticoutput:spamdiagnosticmetadata:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=yVL/yOaWHg5VrTj6lA7i2M4NCGjLsEeQHaOXxYuifus=;
        b=abLFK+inpCetXCRmEWCb22c7OUtdflSC+5FgZ6PjK9rFO093ldbgezzLk805Ix0v4n
         ZwgfH+tewaQh7CC6UtVi38dtTO2+Umuigqg4sTbQhKTX+dmmFsJL0fmDmH/1a90yudno
         4+uPoeSSUVy4CMJDki+MOlbI4lh7YwG0l6QVvtzJXwBIX2oFV2jCU+OIJFsLYbiqjHXe
         M1xBbj7jUH7LBwH3JO6b+XIEHp1J3ow66JFW5PxcIwuN9+KSTbCHD0bcBv5p0aJWB8xj
         uI2IwgE09GOS480JCHI9nYK7Bh 
X-Gm-Message-State: AG10YORbfQnerMyomWK1GrOcCBImXFBz6oL15E5XxXVLJbaktYjIz77+lZDA4ORO+J1aRA==
X-Received: by 10.98.68.194 with SMTP id m63mr3007012pfi.7.1455182240476;
        Thu, 11 Feb 2016 01:17:20 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.182.45.161 with SMTP id o1ls491413obm.27.gmail; Thu, 11 Feb
 2016 01:17:18 -0800 (PST)
X-Received: by 10.60.67.166 with SMTP id o6mr43220325oet.77.1455182238970;
        Thu, 11 Feb 2016 01:17:18 -0800 (PST)
Original-Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1on0097.outbound.protection.outlook.com. [157.56.112.97])
        by mx.google.com with ESMTPS id s10si8084912obd.101.2016.02.11.01.17.18
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
        Thu, 11 Feb 2016 01:17:18 -0800 (PST)
Received-SPF: pass (google.com: domain of Axel.Naumann@cern.ch designates 157.56.112.97 as permitted sender) client-ip=157.56.112.97;
Original-Received: from HE1PR06CA0035.eurprd06.prod.outlook.com (10.162.181.173) by
 VI1PR06MB1230.eurprd06.prod.outlook.com (10.162.124.30) with Microsoft SMTP
 Server (TLS) id 15.1.409.15; Thu, 11 Feb 2016 09:17:16 +0000
Original-Received: from AM1FFO11FD046.protection.gbl (2a01:111:f400:7e00::121) by
 HE1PR06CA0035.outlook.office365.com (2a01:111:e400:51fa::45) with Microsoft
 SMTP Server (TLS) id 15.1.409.15 via Frontend Transport; Thu, 11 Feb 2016
 09:17:16 +0000
Received-SPF: Pass (protection.outlook.com: domain of cern.ch designates
 188.184.36.48 as permitted sender) receiver=protection.outlook.com;
 client-ip=188.184.36.48; helo=CERNMX12.cern.ch;
Original-Received: from CERNMX12.cern.ch (188.184.36.48) by
 AM1FFO11FD046.mail.protection.outlook.com (10.174.65.209) with Microsoft SMTP
 Server (TLS) id 15.1.409.7 via Frontend Transport; Thu, 11 Feb 2016 09:17:16
 +0000
Original-Received: from cernfe04.cern.ch (188.184.36.41) by cernmxgwlb4.cern.ch
 (188.184.36.48) with Microsoft SMTP Server (TLS) id 14.3.158.1; Thu, 11 Feb
 2016 10:17:05 +0100
Original-Received: from pb-d-128-141-192-92.cern.ch (2001:1458:202:1c1::102:6759) by
 smtp.cern.ch (2001:1458:201:66::100:14) with Microsoft SMTP Server (TLS) id
 14.3.174.1; Thu, 11 Feb 2016 10:17:04 +0100
X-Enigmail-Draft-Status: N1110
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0)
 Gecko/20100101 Thunderbird/38.5.1
In-Reply-To: <9A41B088-08C0-4222-8558-FA734F61BDE5@gmail.com>
X-Originating-IP: [2001:1458:202:1c1::102:6759]
X-EOPAttributedMessage: 0
X-Microsoft-Exchange-Diagnostics: 1;AM1FFO11FD046;1:XLFNb5OHjuDCCDqSDIi1DNINUBMqXeV0qHsP6OzBJ0tKMdsEMXslzt8dZg0MlqBPlCGzRmcqVFBJNkTr+goeiODoz1/L2wH0rF7+rFBE+f0Vc9/EE8JGZobdJzMpYQCD5HFpANEWNi+8cBwe/N2n3pfLI2mJJwdDUqlHxnxnzsA8ieahGa4Arvp/bycaRn6prOY+zFqvsGang5V7kQ/jmOTBB5G0wkbjLsgCSfp7VGQ/a4tExE/I82E/EPeHsU7HCfoM2dUeH7fOMHEWOtJjmyX3OSwSnZpQOxOsQkpnkp55pXb3ufFWE0bxzI+xlEMd5b95Y58Lb36VVmnn0bYn2/d9FEL/MuL8yrDEPC82bXW2ayS2U+OjpxUFHLQwCLP8NumBoFWTp1hM7AL1DQmVunm/cPns7pwE9/f5iSqodeKgvNDuDT5zhCwE1A/dOt9++nS/rEwAyDkjLPtoOUbgfA==
X-Forefront-Antispam-Report: CIP:188.184.36.48;CTRY:CH;IPV:CAL;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(438002)(479174004)(189002)(199003)(24454002)(64026002)(92566002)(2950100001)(512874002)(5001970100001)(4326007)(2906002)(76176999)(65816999)(50986999)(54356999)(84326002)(586003)(1096002)(74482002)(11100500001)(6116002)(6806005)(1220700001)(5008740100001)(86362001)(4001350100001)(5001770100001)(87936001)(106466001)(33656002)(65806001)(65956001)(5003600100002)(83506001)(16796002)(561944003)(36756003)(5004730100002)(64126003)(189998001)(16236675004)(19580395003)(53416004)(19580405001)(3826002);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR06MB1230;H:CERNMX12.cern.ch;FPR:;SPF:Pass;MLV:sfv;MX:1;A:1;LANG:en;
X-Microsoft-Exchange-Diagnostics: 1;VI1PR06MB1230;2:ONwIB1JRwVr7P+AXFgnPp1mJMcoOn1+iEdY1y4x6xpwXEwhgKUGAiTcpsVKPz0fQxG0HrY4dpd3fXu6RR0iuQuYK29Qy2BJAGOFd9JSQT2BQLkFdP/Gb20p+agNAWpi07Y5sb5jC9+IiSNkCgqOeXQ==;3:y9yCZ4PwOUwXEppIcBO6nSwIL+M6IHeKdlzMbBAxfKHPwsaFjvfMmSbliTj5ZY8rjdhOnLMCWoGIIkDEjkFMD40MI3HcwvVljlQy+DHB+sYCsaqa/BKRzQdkT2FEadJjWTWlQkVbxiFPMOB7T73QCq59IdCwPrxd8ADUrclICGZv10GQ8GFCzyZ4vgVVqZ2OmANxa5u8TcQu2WgIHPC6uxEb+SuD982m3xbHXb5QmuCoyKJcSe2+4WKqvzCqEBmzkdHqggPfnMQC5sF0j5Qw3A==;25:Yj4V9SvAMVKr7YAtS8BzR6wb5nZFEvK4O8Gh230Oq2UecCdHaFjhawez7foMnE2C3RzfyC9q/jjx6xAS0HMNerIenehUmnIDPFVxqyX8ILA6rDP7VQ6VzthC2FTVs/bIKjI4GBY5F6LuhaQMtVFLXbYaNtRfTfGsHRVI9GcBiS3MZHhzDGc7oufKHymFl6tVWRabCHcFHMyeJ2QByrUEIkupi7HeSJX+A3G2Bq/HGTEPhfPEsSI7z++P6c4KYvZmxVY5l0YOOIiX5k1wafoRQjPlehViX4fLDtg9ujxBTrg3fWHqJ8I5A
 4Yp2Y8HyNi/
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501001);SRVR:VI1PR06MB1230;
X-MS-Office365-Filtering-Correlation-Id: e8c649ef-fad1-49b3-b8f7-08d332c42289
X-Microsoft-Exchange-Diagnostics: 1;VI1PR06MB1230;20:QHps8lYxjiHNlSlouVAmpfw6akveUANkIlbDPD0BSABQUlnCQqCnoNsh22r9moSxkxqR6uvoMD73Qg/OvlgHxSSPEw9gyyfi9T8e7FtUox7Bp+u0bYP6g+8Bj46U/Ton2f7IOB4tl6mGHRkyteuw5QCBrGaW9ZjsGX80w7Jpl+7wFYDAoTFwNcYcrX/1bKvh7KQWWrHK5JgylC61O3a6H9pQIQINJ+DSvfUoDn3MNO6RHj9VwwAKrsFOk6ZopS97yTzbC4mGR9X2sUkNae02n/16KNNDh/7T/PqX5ge5o8YSeUWu1hCrMPrBYl0Pn7f1xFokj8kNc8tEjDTerUKujcYfFkQX1rqxpxlRxqS2NH9X+M7f2uVN9WDmIUZA0BAyvlFmCqFV1xQR4ruzQigYkcVVF7T2IvU2B9E3S7zoLHEy86I6rLjAuckXOCDcLSQNnO7VcgRUEEnCjJ6msfUoE8rJk/j/jU2G0Ys45DZ0Yi6LRyaUL3u/ecW3WxkB2Cn7
X-Microsoft-Antispam-PRVS: <VI1PR06MB123072ACB8BE65118C49E5BE8DA80@VI1PR06MB1230.eurprd06.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(13023025)(13018025)(13016025)(13013025)(5005006)(13024025)(13021025)(8121501046)(10201501046)(3002001);SRVR:VI1PR06MB1230;BCL:0;PCL:0;RULEID:;SRVR:VI1PR06MB1230;
X-Microsoft-Exchange-Diagnostics: 1;VI1PR06MB1230;4:KLMMkQ+w4kovbzQDfN6343EDgQUz0fR9vMOLcG1oDvhaM8xxfcLCK93RvHUHeRU+KTSHrj3dfmF+zdMJ2cqydLZFu7IMnITqK00+oq4dcIqu4/L6vLIYy2xVBNXbPuGr9jQVJY2ym/7LSxt71DBjqv+tCE65Qd9LBxrXbZ2GRj+7Qhx9o3OsAek248w/jzbYzy5CY9LF6ta0v7QZYQKg3M5z//0vW8TI90izxlPWkRyBptg3P7NIpux02nOhBe7F8aiNjvCRteLJ+kbgWDPvYUSyWQp319sJBDaE0vcyeKEHCG4CXFNwN7nuLfRO/P8mNvlO5l57egAeGpgH7Q+ToVKkuDCDB32AQ3E5vDYUNepRE/wtPWG6E4VA2fLUl+Ng+0cg5vLVdv+bQt5lAkdI36SJMIc0M1DApBUFbQowgzgMmvypechIHM1+hdAmGYt7IbwKFYP1xouj9AupTSW7qbckGHm22NgkoTUcJLXCIrM=
X-Forefront-PRVS: 08497C3D99
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR06MB1230;23:opoYVFJOtQbTZjl5jROq9tcF582eFvSmMTPmedJYm?=
 =?us-ascii?Q?jEZnxemcMLKmh9P95h3VM5z8hqsrOyrOmofLBogprBmtmXKxUbf2oF/rJQHS?=
 =?us-ascii?Q?n/20a3SJGQvnZynRAOCetG8Ig+SQd6o3/Mtx9JUZ7cFPjND4wyBN5YlzXlO1?=
 =?us-ascii?Q?2UOHXPzkO2KTD3+I79+SjK2gy6fkJvdHdIyl0rZgi6MsToEXtdxbSXxo/piC?=
 =?us-ascii?Q?hYjrZ7QjovFEKSxFcqy2MqafV+xpmxRZ7Q/J4ImGtOF219kSs5jUug1NTx3F?=
 =?us-ascii?Q?hWCBzGd/WXDtuQqeBYORh5VyfT1CsL9kssgdjJFtrBpQeIewFFpi0Mmd1aKm?=
 =?us-ascii?Q?NikLtUEwRV4tEhx0YKVFShzuf17RodeATe5S2UlJeHw45m+oQjonsG6voT2N?=
 =?us-ascii?Q?uorT4+mz0+2F+EuOTz5qSZqggZCTVYSOp9I++gr6eWwlmoCraXku41qVNmGv?=
 =?us-ascii?Q?zmRS4gQUkIrNflhsTTX93+y/GaFPcZcqwYR4RWYNmQnNMfeqnOGZLma6MKCc?=
 =?us-ascii?Q?Hu3MMnU+6/J0kYIla7vQ989Q9fl1Qc3yhx3KIpBJksQFhliDyci+c9xZSt99?=
 =?us-ascii?Q?QJh/noSXYDIsy2PFJ6cPY9AhcdF1oAetoX1mbczhabG0LNg9o3fttAt2Iexd?=
 =?us-ascii?Q?6iPTRT 
X-Microsoft-Exchange-Diagnostics: 1;VI1PR06MB1230;5:CqM1geSsOiTO5z4pmvCqqEybYG8sXBy+RVwFoDqMfuAEnEvE0o31tkaQe2hDhrz4l94KUCL5XcnpaiN27Od8fNJy1uFIrUhgCRHTeDI9qnN73jcSVu0HgYSrWT7APX7CZNNL5cyhjDFDn+mQoSXTrw==;24:SmbW3ZA82w7HdoeekLLNHn1lTDYyEvDUQc78xyzy0Pioe4efVd05nMAiwGF1DnThgzDWCdOInEC0ow6uNW6s+jWeiIMWT5meAGDtGFR9I+g=
SpamDiagnosticOutput: 1:23
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: cern.ch
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Feb 2016 09:17:16.1305
 (UTC)
X-MS-Exchange-CrossTenant-Id: c80d3499-4a40-4a8c-986e-abce017d6b19
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c80d3499-4a40-4a8c-986e-abce017d6b19;Ip=[188.184.36.48];Helo=[CERNMX12.cern.ch]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR06MB1230
X-Original-Sender: axel.naumann@cern.ch
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of Axel.Naumann@cern.ch designates 157.56.112.97 as permitted sender)
 smtp.mailfrom=Axel.Naumann@cern.ch;       dkim=pass header.i=@cern.onmicrosoft.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:24315
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/24315>

--------------000606080509080901030803
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi David,

Thank you, that's a good argument. Would you mind writing a paper on
this? I don't want to halt the LWG process for this. The current variant
will hopefully end up in a TS at some point; before we vote that out we
can have your improvement in.

I'd rather not stop the current variant by going back to LEWG and
re-opening the design discussion at this stage. I'd prefer it to arrive
in the TS, even at the cost of a only partially perfect (-ly forwarding)
variant.

Cheers, Axel.

On 11/02/16 09:56, David Krauss wrote:
> Hi Axel and Agust=C3=ADn,
>
> The latest variant proposal and implementation provide catch-all
> constructor and assignment operator templates. These implement
> overload resolution to determine which (if any) alternative type is
> most suitable to receive the given value, then forward to the
> appropriate delegate.
>
> However, perfect forwarding isn=E2=80=99t completely perfect. It doesn=E2=
=80=99t
> support braced init lists.
>
> variant< char, string > q =3D { { 999 } }; // error: can=E2=80=99t deduce=
 T.
> variant< char, string > r =3D { 999 }; // valid, but overflows.
> variant< char, string > s =3D { 'a', 'b', 'c' }; // error.
>
> Wouldn=E2=80=99t it be better to provide overload sets of non-template
> constructors and assignment operators? This might present a different
> set of implementation challenges, but the wrapping would be thinner
> and the compile-time complexity may ultimately be lower. The
> specification would certainly be simpler.
>
> - Cheers,
> D
>

--=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 https://groups.google.com/a/isocpp.org/group/std-propos=
als/.

--------------000606080509080901030803
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Content-Type=
">
  </head>
  <body bgcolor=3D"#FFFFFF" text=3D"#000000">
    Hi David,<br>
    <br>
    Thank you, that's a good argument. Would you mind writing a paper on
    this? I don't want to halt the LWG process for this. The current
    variant will hopefully end up in a TS at some point; before we vote
    that out we can have your improvement in.<br>
    <br>
    I'd rather not stop the current variant by going back to LEWG and
    re-opening the design discussion at this stage. I'd prefer it to
    arrive in the TS, even at the cost of a only partially perfect (-ly
    forwarding) variant.<br>
    <br>
    Cheers, Axel.<br>
    <br>
    <div class=3D"moz-cite-prefix">On 11/02/16 09:56, David Krauss wrote:<b=
r>
    </div>
    <blockquote
      cite=3D"mid:9A41B088-08C0-4222-8558-FA734F61BDE5@gmail.com"
      type=3D"cite">
      <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf=
-8">
      <div class=3D"">Hi Axel and Agust=C3=ADn,</div>
      <div class=3D""><br class=3D"">
      </div>
      The latest <font class=3D"" face=3D"Courier">variant</font> proposal
      and implementation provide catch-all constructor and assignment
      operator templates.=C2=A0These implement overload resolution to
      determine which (if any) alternative type is most suitable to
      receive the given value, then forward to the appropriate delegate.
      <div class=3D""><br class=3D"">
      </div>
      <div class=3D"">However, perfect forwarding isn=E2=80=99t completely
        perfect. It doesn=E2=80=99t support braced init lists.</div>
      <div class=3D""><br class=3D"">
      </div>
      <div class=3D""><font class=3D"" face=3D"Courier">variant&lt; char,
          string &gt; q =3D { { 999 } }; // error: can=E2=80=99t deduce T.<=
/font></div>
      <div class=3D"">
        <div class=3D""><font class=3D"" face=3D"Courier">variant&lt; char,
            string &gt; r =3D { 999 }; // valid, but overflows.</font></div=
>
      </div>
      <div class=3D"">
        <div class=3D""><font class=3D"" face=3D"Courier">variant&lt; char,
            string &gt; s =3D {=C2=A0</font><span style=3D"font-family: Cou=
rier;"
            class=3D"">'</span><font class=3D"" face=3D"Courier">a',=C2=A0<=
/font><span
            style=3D"font-family: Courier;" class=3D"">'</span><font
            class=3D"" face=3D"Courier">b</font><span style=3D"font-family:
            Courier;" class=3D"">'</span><font class=3D"" face=3D"Courier">=
,=C2=A0</font><span
            style=3D"font-family: Courier;" class=3D"">'</span><font
            class=3D"" face=3D"Courier">c</font><span style=3D"font-family:
            Courier;" class=3D"">'</span><font class=3D"" face=3D"Courier">=
=C2=A0};
            // error.</font></div>
      </div>
      <div class=3D""><font class=3D"" face=3D"Courier"><br class=3D"">
        </font></div>
      <div class=3D"">Wouldn=E2=80=99t it be better to provide overload set=
s of
        non-template constructors and assignment operators? This might
        present a different set of implementation challenges, but the
        wrapping would be thinner and the compile-time complexity may
        ultimately be lower. The specification would certainly be
        simpler.</div>
      <div class=3D""><br class=3D"">
      </div>
      <div class=3D""><span class=3D"Apple-tab-span" style=3D"white-space:p=
re">	</span>-
        Cheers,</div>
      <div class=3D""><span class=3D"Apple-tab-span" style=3D"white-space:p=
re">	</span>D</div>
      <div class=3D""><br class=3D"">
      </div>
    </blockquote>
    <br>
  </body>
</html>

<p></p>

-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />

--------------000606080509080901030803--

.
