220 29503 <CAA7YVg2man2zq0CHJ-cLrC41FpAFad4MVgWviee7Lbdrm4cVQw@mail.gmail.com> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Viacheslav Usov <via.usov@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Proposal: implicit converstion of member function
 to temporary global function matching arg. and ret
Date: Mon, 21 Nov 2016 14:12:33 +0100
Lines: 61
Approved: news@gmane.org
Message-ID: <CAA7YVg2man2zq0CHJ-cLrC41FpAFad4MVgWviee7Lbdrm4cVQw@mail.gmail.com>
References: <31cd1b1d-25cc-4114-aa86-daa771b529ad@isocpp.org>
 <CAA7YVg0Yffu1z5iW7PHA4dw+z9g1SmEMXdcAcQUKv62wUfEnaA@mail.gmail.com> <CACGiwhFL2EA6LseyC6zxnPNZiWHmo_aSxm9bACY0Fo0+v3BdQA@mail.gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary=f403045ec286b6c8980541cf6859
X-Trace: blaine.gmane.org 1479734273 17279 195.159.176.226 (21 Nov 2016 13:17:53 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Mon, 21 Nov 2016 13:17:53 +0000 (UTC)
To: "ISO C++ Standard - Future Proposals" <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBDU6VRPKW4BBB6PHZPAQKGQE5C3O4JA@isocpp.org Mon Nov 21 14:17:45 2016
Return-path: <std-proposals+bncBDU6VRPKW4BBB6PHZPAQKGQE5C3O4JA@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-wm0-f69.google.com ([74.125.82.69])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBDU6VRPKW4BBB6PHZPAQKGQE5C3O4JA@isocpp.org>)
	id 1c8oTg-00032m-1A
	for gclcip-std-proposals@m.gmane.org; Mon, 21 Nov 2016 14:17:44 +0100
Original-Received: by mail-wm0-f69.google.com with SMTP id g23sf39487324wme.4
        for <gclcip-std-proposals@m.gmane.org>; Mon, 21 Nov 2016 05:17:47 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:in-reply-to:references:from:date:message-id:subject:to
         :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=02ZiWoZxeHX9MA23Fzy/0dgAzv70n3PuPxyKXms4f+8=;
        b=rdM9gZawJ7ojfY2nStDiPIw4l0JYBYibFcnhwunENgIsDp47D3qxLPT17isMrjdUlJ
         RXWNnxrFRaZkxaQI9VXckm6tjcA1U2id1nOmw+qxIbt18P3WCgiQZYrr1+HbqIDvW1n9
         VPhrWu+cILTqJ+3EiVf15/Xs6DVZpGQfizpjRUv4+93tb/On6DOUei53jDkOUKakxGzc
         lSlx6YBgHJl6S8jrl2OvZocQd6SC+M/w2yS1XgxXdeUnScGIukAbtm90/1mNHZD+d/DY
         nm/A5Qe5vnZv0RVS7BNd9Iz4ZUJgRRoN/fCVyUnoDr3EInQP1xqwG4TUfe7V8e+mnSGi
         9MAA==
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: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=02ZiWoZxeHX9MA23Fzy/0dgAzv70n3PuPxyKXms4f+8=;
        b=j9Puw+A/iIb586Yjll+xH8L2ZmF7U91KqhRgv66QRblTXzfHlYVsT5s9esXrqQR/9V
         RysZrfTaD/mhQRfieTIXyqiKWciePXVabV5a2xwgbnNX/Dv8T2FY78nlyF8+1c6ZN+jD
         PBh+xc4M9a/x8lgzjB0STIsTptayHdpv/Cc8+COR1zFTi7nWomXaoT5IV//5NPQyx+9V
         ARONBRF0o6GFzU9sxmSIg1Le2zyztP5i6bMqQfOfmw0lLqOtkezx++m0xjGkkJFOebUA
         57Aj8v8PxAYA4YopaghmIrH+vYHRa5678GEVPsR9peZZUXTN5WNlj6fAOob3ciwpaSLL
         jDsw==
X-Gm-Message-State: AKaTC02gq57eqL9Fkb/RtKHl27QoFQL6pDTx63sfEfaltOgS03qadhte5SHrzW8ABX1j3w==
X-Received: by 10.46.69.135 with SMTP id s129mr2185464lja.1.1479734266623;
        Mon, 21 Nov 2016 05:17:46 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.28.209.129 with SMTP id i123ls1165668wmg.16.gmail; Mon, 21 Nov
 2016 05:17:45 -0800 (PST)
X-Received: by 10.194.0.229 with SMTP id 5mr11385032wjh.55.1479734264874;
        Mon, 21 Nov 2016 05:17:44 -0800 (PST)
Original-Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com. [2a00:1450:400c:c09::22d])
        by mx.google.com with ESMTPS id u13si20098288wjw.235.2016.11.21.05.17.44
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Mon, 21 Nov 2016 05:17:44 -0800 (PST)
Received-SPF: pass (google.com: domain of via.usov@gmail.com designates 2a00:1450:400c:c09::22d as permitted sender) client-ip=2a00:1450:400c:c09::22d;
Original-Received: by mail-wm0-x22d.google.com with SMTP id u144so21344515wmu.1
        for <std-proposals@isocpp.org>; Mon, 21 Nov 2016 05:17:44 -0800 (PST)
X-Received: by 10.46.8.25 with SMTP id 25mr8150874lji.21.1479733954397; Mon,
 21 Nov 2016 05:12:34 -0800 (PST)
Original-Received: by 10.25.196.83 with HTTP; Mon, 21 Nov 2016 05:12:33 -0800 (PST)
In-Reply-To: <CACGiwhFL2EA6LseyC6zxnPNZiWHmo_aSxm9bACY0Fo0+v3BdQA@mail.gmail.com>
X-Original-Sender: via.usov@gmail.com
X-Original-Authentication-Results: mx.google.com;       dkim=pass
 header.i=@gmail.com;       spf=pass (google.com: domain of via.usov@gmail.com
 designates 2a00:1450:400c:c09::22d as permitted sender) smtp.mailfrom=via.usov@gmail.com;
       dmarc=pass (p=NONE dis=NONE) header.from=gmail.com
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: <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:29503
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/29503>

--f403045ec286b6c8980541cf6859
Content-Type: text/plain; charset=UTF-8

On Mon, Nov 21, 2016 at 1:09 PM, D. B. <db0451@gmail.com> wrote:

> I guess they didn't really mean "temporary", but rather
compiler-generated.

No, that cannot be compiler-generated. The generated function will have to
have at least the current value of the this pointer embedded into it, at
least in the situations when the compiler cannot optimise that away. So the
functions will have to be generated (and destructed) at runtime,
essentially making functions first-class objects, which, as I said, would
be a pretty big change in the C++ philosophy.

Cheers,
V.

-- 
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/CAA7YVg2man2zq0CHJ-cLrC41FpAFad4MVgWviee7Lbdrm4cVQw%40mail.gmail.com.

--f403045ec286b6c8980541cf6859
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">On M=
on, Nov 21, 2016 at 1:09 PM, D. B. <span dir=3D"ltr">&lt;<a href=3D"mailto:=
db0451@gmail.com" target=3D"_blank">db0451@gmail.com</a>&gt;</span> wrote:<=
/div><div class=3D"gmail_quote"><br></div><div class=3D"gmail_quote">&gt; I=
 guess they didn&#39;t really mean &quot;temporary&quot;, but rather compil=
er-generated.</div><div class=3D"gmail_quote"><br></div><div class=3D"gmail=
_quote">No, that cannot be compiler-generated. The generated function will =
have to have at least the current value of the this pointer embedded into i=
t, at least in the situations when the compiler cannot optimise that away. =
So the functions will have to be generated (and destructed) at runtime, ess=
entially making functions first-class objects, which, as I said, would be a=
 pretty big change in the C++ philosophy.</div><div class=3D"gmail_quote"><=
br></div><div class=3D"gmail_quote">Cheers,</div><div class=3D"gmail_quote"=
>V.</div></div></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/CAA7YVg2man2zq0CHJ-cLrC41FpAFad4MVgWv=
iee7Lbdrm4cVQw%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAA7YVg2man2zq0CH=
J-cLrC41FpAFad4MVgWviee7Lbdrm4cVQw%40mail.gmail.com</a>.<br />

--f403045ec286b6c8980541cf6859--

.
