220 25486 <456f6164-031c-4ccc-ba25-39fcb5714b98@isocpp.org> article
Path: news.gmane.org!not-for-mail
From: barry.revzin@gmail.com
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Re: Relocation as a solution for the valueless
 variant problem?
Date: Fri, 8 Apr 2016 13:46:35 -0700 (PDT)
Lines: 96
Approved: news@gmane.org
Message-ID: <456f6164-031c-4ccc-ba25-39fcb5714b98@isocpp.org>
References: <b4feb52d-4cd0-475f-9f3d-6694564bc1b0@isocpp.org>
 <4187538d-68fa-4582-ba26-f406479abe67@isocpp.org>
 <eafd831f-85d2-430c-9969-7d084e6d28d2@isocpp.org>
 <CALQmNFggBQSADjEqS7pEzcdPSStGJfXkJdX0d2CwW_TmwqA=yQ@mail.gmail.com>
 <105d82bc-e1cf-4795-894c-112cd591c3af@isocpp.org>
 <CALQmNFja3Kt1XRR8S7Qr3rOktChVzuDGO7ZtSaQpsWaohU6wAA@mail.gmail.com>
 <4f31b957-05be-47cf-a1ca-03f33a9900c0@isocpp.org>
 <CALQmNFgoV-Rg4T6+KqMFt6vNa7GCDpU=jVLRcnK4dDd+eBby8A@mail.gmail.com>
 <30181f63-7189-494d-9294-3f8b8759308f@isocpp.org>
 <d7eee27f-bdfc-45b0-9c29-508dd01975b3@isocpp.org>
 <cad96977-d5d4-4eea-8169-ae1ceb8b6477@isocpp.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_516_776133569.1460148395268"
X-Trace: ger.gmane.org 1460148400 12407 80.91.229.3 (8 Apr 2016 20:46:40 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Fri, 8 Apr 2016 20:46:40 +0000 (UTC)
Cc: isocppgroup@denisbider.com
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBCJJTG7CS4ARBLFRUC4AKGQECYCSLLY@isocpp.org Fri Apr 08 22:46:39 2016
Return-path: <std-proposals+bncBCJJTG7CS4ARBLFRUC4AKGQECYCSLLY@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-qg0-f70.google.com ([209.85.192.70])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCJJTG7CS4ARBLFRUC4AKGQECYCSLLY@isocpp.org>)
	id 1aodIc-0004zD-73
	for gclcip-std-proposals@m.gmane.org; Fri, 08 Apr 2016 22:46:38 +0200
Original-Received: by mail-qg0-f70.google.com with SMTP id j35sf127976004qge.1
        for <gclcip-std-proposals@m.gmane.org>; Fri, 08 Apr 2016 13:46:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=ZXvv016m/6ar7Xtu6DAhcr2rA3zQWdE7DC6xj0ECaxk=;
        b=rI9Ft8BgLZ3XiPJrdJXa0Evhhy6yaQCxjMzfY9AvDqbOsEIImFKEndYcbGVoiCtBrF
         DR7TP/XMFOIclKS6lRPbvyaSwoGGgfcT1egU7wRo4QpG7JBGF2u6jD5JbdsDbzFMN5q+
         cSL9DwTNaD6jIUzrLmUOz8VMG9xof5J6LLxqPdVvvoLfGE+8AxHnbxJQfbaTFiloeAiJ
         JAO9Sc0leDcZ2pL+p46oWh0N36NsWcrmh0iQXU1g+Lm5Sg6wmJ0RICYvnUi5vbQDEqxn
         BA8doGIWaIhDCgnJTKnFw0W7iiJM7bKRGvZJfFp7i5SImzfTtPlj6DlvHBtpQJvpQFVO
         lvcw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=ZXvv016m/6ar7Xtu6DAhcr2rA3zQWdE7DC6xj0ECaxk=;
        b=NNqKiWKQhQFjSOB5OJTmkKJgJDR129Wb2XzGGsOMA/nGdKIZRUAWptGVi9Sgh3Kifv
         gdvPMXAdWELCXe9gZoFNeOizWM9WR4EjzuwLbnLENjY60yu0Qv2xrZRmzdAycqTF+tgt
         wlVhPR7P2dvgMOEns1zM/wbDxxddyzmSTXn+ExxnNWzNhw5EQCuMN6SdCBHPih2oIGzC
         U2mvlRo25QhfDG8aEPFhY238kj/qc3nDTF+nDZVBC/uph2jPJby1Nhd9thkRD0O9WVeF
         zX977tbiXV0mPVEjQuYHGvwp+q0q3+Zh1bTIFPzoQ9uaNqyQ0V/QjB5QBrxaBfPq5X6v
         I3mw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:date:from:to:cc:message-id:in-reply-to
         :references:subject:mime-version:x-original-sender:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=ZXvv016m/6ar7Xtu6DAhcr2rA3zQWdE7DC6xj0ECaxk=;
        b=FSY5zfZei+FfwlyMgp4DNZMvQuVPo65nhE8hZhY1+wc2Jezo47xv4HcCBgxCMqAoHR
         wY980CEg6iR90nbNpUimBt2bY+L+9wnnT/wL1PQ2Wd8R6iLpG04EZQoNHZ21USXljPNw
         4/EPJi5S3BMwkQRuTmEgMsi2L9aSIfE3iduBEp4pUKsIqPxylUw9VgOePAtL8um5M86P
         +aTr+6Pi8884rgiXc/mPqws5OG0cl3UK6LOiWcU3NWk3/g7WHNhM68v/8dG+o9FvTEvd
         +eHR3uIwYUBRaJvdmvMg6W7SONMIRLua3B2P2IMP6bBxjF9Hvn2epH3VBQEVN7VAgVf+
         BtHA==
X-Gm-Message-State: AD7BkJIBDT5g3vbmiOQUqwMf1WwAPxLaPa4boEhxIT0996r48XJaEm7GaJtPKcuKXKgFoA==
X-Received: by 10.13.223.7 with SMTP id i7mr7114954ywe.55.1460148396946;
        Fri, 08 Apr 2016 13:46:36 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.107.6.35 with SMTP id 35ls1315359iog.31.gmail; Fri, 08 Apr
 2016 13:46:36 -0700 (PDT)
X-Received: by 10.50.129.97 with SMTP id nv1mr141677igb.7.1460148395985;
        Fri, 08 Apr 2016 13:46:35 -0700 (PDT)
In-Reply-To: <cad96977-d5d4-4eea-8169-ae1ceb8b6477@isocpp.org>
X-Original-Sender: Barry.Revzin@gmail.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:25486
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/25486>

------=_Part_516_776133569.1460148395268
Content-Type: multipart/alternative; 
	boundary="----=_Part_517_1178403751.1460148395269"

------=_Part_517_1178403751.1460148395269
Content-Type: text/plain; charset=UTF-8


>
> > If your relocation support can't even perform relocation in this most 
> simple of cases:
>
> How does it *not* handle that case? If std::list has a relocator, the 
> compiler can just call the relocator in this case:
>
>   std::list<T> SomeFunc() {
>     std::list<T> lt = ...
>     ...
>     return lt; // no special syntax needed; compiler calls relocator >>list<T>
>   }
>
>
> What prevents the compiler from doing this?
>

As far as I can tell, your proposal doesn't say anything about this case, 
or about automatic objects at all. Your invocation section only addresses 
the use-case of "relocating" one pointer to another. 

You should take advantage of the feedback opportunity to improve your 
proposal. There's no need to be so defensive. 

-- 
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.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/456f6164-031c-4ccc-ba25-39fcb5714b98%40isocpp.org.

------=_Part_517_1178403751.1460148395269
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: 0.8ex;bor=
der-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr"><div>&gt; If =
your relocation support can&#39;t even perform relocation in this most simp=
le of cases:<br></div><div><br></div><div>How does it <em>not</em> handle t=
hat case? If std::list has a relocator, the compiler can just call the relo=
cator in this case:</div><div><font color=3D"#666600"><br></font></div><div=
><font color=3D"#666600"><pre style=3D"background:rgb(246,248,255);color:rg=
b(0,0,32)">  <span style=3D"color:rgb(0,102,238)">std</span><span style=3D"=
color:rgb(64,96,128)">::</span><span style=3D"color:rgb(0,48,96)">list</spa=
n><span style=3D"color:rgb(64,96,128)">&lt;</span>T<span style=3D"color:rgb=
(64,96,128)">&gt;</span> SomeFunc<span style=3D"color:rgb(48,128,128)">(</s=
pan><span style=3D"color:rgb(48,128,128)">)</span> <span style=3D"color:rgb=
(64,96,128)">{</span>
    <span style=3D"color:rgb(0,102,238)">std</span><span style=3D"color:rgb=
(64,96,128)">::</span><span style=3D"color:rgb(0,48,96)">list</span><span s=
tyle=3D"color:rgb(64,96,128)">&lt;</span>T<span style=3D"color:rgb(64,96,12=
8)">&gt;</span> lt <span style=3D"color:rgb(48,128,128)">=3D</span> <span s=
tyle=3D"color:rgb(48,128,128)">.</span><span style=3D"color:rgb(48,128,128)=
">.</span><span style=3D"color:rgb(48,128,128)">.</span>
    <span style=3D"color:rgb(48,128,128)">.</span><span style=3D"color:rgb(=
48,128,128)">.</span><span style=3D"color:rgb(48,128,128)">.</span>
    <span style=3D"color:rgb(32,0,128);font-weight:bold">return</span> lt<s=
pan style=3D"color:rgb(64,96,128)">;</span> <span style=3D"color:rgb(89,89,=
121)">// no special syntax needed; compiler calls relocator &gt;&gt;list&lt=
;T&gt;</span>
  <span style=3D"color:rgb(64,96,128)">}</span>

</pre></font></div><div><br></div><div>What prevents the compiler from doin=
g this?</div></div></blockquote><div><br></div><div>As far as I can tell, y=
our proposal doesn&#39;t say anything about this case, or about automatic o=
bjects at all. Your invocation section only addresses the use-case of &quot=
;relocating&quot; one pointer to another.=C2=A0</div><div><br></div><div>Yo=
u should take advantage of the feedback opportunity to improve your proposa=
l. There&#39;s no need to be so defensive.=C2=A0</div>

<p></p>

-- <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 />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/456f6164-031c-4ccc-ba25-39fcb5714b98%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/456f6164-031c-4ccc-ba25-39fcb5714b98=
%40isocpp.org</a>.<br />

------=_Part_517_1178403751.1460148395269--
------=_Part_516_776133569.1460148395268--

.
