220 40214 <CABPJVnR3yCzLeYKxdt33JXM17vKwm-7LvuMOLrFZFWPSgOnpvg@mail.gmail.com> article
Path: news.gmane.org!.POSTED!not-for-mail
From: John McFarlane <john@mcfarlane.name>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Global operator overriding
Date: Sun, 23 Sep 2018 04:54:48 -0700
Lines: 196
Approved: news@gmane.org
Message-ID: <CABPJVnR3yCzLeYKxdt33JXM17vKwm-7LvuMOLrFZFWPSgOnpvg@mail.gmail.com>
References: <21428a88-efb7-4648-86c6-5dbf19b96519@isocpp.org> <CAJ2mQS05Y8ezjYnWwdaj7xxa0=5etZPKBUvkDNtbXCvt=uf_Tg@mail.gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="000000000000db7e570576888af2"
X-Trace: blaine.gmane.org 1537703581 19778 195.159.176.226 (23 Sep 2018 11:53:01 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Sun, 23 Sep 2018 11:53:01 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBDS7B7WQUYOBBFX6TXOQKGQE75PCLHI@isocpp.org Sun Sep 23 13:52:56 2018
Return-path: <std-proposals+bncBDS7B7WQUYOBBFX6TXOQKGQE75PCLHI@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-lj1-f198.google.com ([209.85.208.198])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBDS7B7WQUYOBBFX6TXOQKGQE75PCLHI@isocpp.org>)
	id 1g42wW-00053f-Tc
	for gclcip-std-proposals@m.gmane.org; Sun, 23 Sep 2018 13:52:52 +0200
Original-Received: by mail-lj1-f198.google.com with SMTP id e12-v6sf705788ljb.16
        for <gclcip-std-proposals@m.gmane.org>; Sun, 23 Sep 2018 04:55:03 -0700 (PDT)
ARC-Seal: i=2; a=rsa-sha256; t=1537703703; cv=pass;
        d=google.com; s=arc-20160816;
        b=pElwIzn7thltGsqQKbXJEjEP3fRCimUR38Tnn9ZZaz2RRLsY8WHXymMoU61jdcUm6P
         2KzbyW/xQU7A291W8MXXWf7SurY/g94rZty7qGSumH54i/l7mxjnl8HgSEKcPeUzX1lk
         UCaLojKFMurPmJmUOKeKkmCmwZ6wGD/14inMqzGs1gavqomvEQjWd+R3McMO7IPqH+c5
         u3hoHo8tZbG0dmdgNNa+w3a4t1EnSApDQTWyS+cAvb9HZEWIYd0g+cITtTmaAw0ZlM1L
         X2K1uAQoSkZVhOEC+uj1wjZ26XZfv7kq7EEOxN4VA/nj72Vd9OYvJqVvLukxKtcIdjSz
         sdwA==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:to:subject:message-id:date
         :from:in-reply-to:references:mime-version:dkim-signature;
        bh=+3gkhJSybeLuzRksLiExvy3Vid3HmKyKMvvukyABZjE=;
        b=pfITOrdW36N0lSb2l7qMW3/MUKL/fHSB/C0VmkXNR2DcvGupY6O9h9VSsE0aOjorsc
         ++6EVzICawEaz1GYw63KkrJRwMu/DNK7TtxBM3dZhoOlk1PU45Fem1kBbWN1JeK55yl6
         WI8U5ZzS+jDZhJUgDsbTXXasxIg8B5dWrj3g8paxlD0UiWkl3vkmJ2FgDSAYHtPCXx0P
         8xgm+yeojBLA8vEvKPC8bRUAHet89kVDHQ9Rz3Q73iCv0Kzs9DteFiRb5MJWmc+4mJmy
         +xRXAL8nfzaSselrCAwCjHjCAZLVVBhBGyeve+qzmudlORmSawOsXw4c8VYwdHHsfuJt
         SmTg==
ARC-Authentication-Results: i=2; mx.google.com;
       spf=pass (google.com: domain of mcfarlane.john@gmail.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=mcfarlane.john@gmail.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:references:in-reply-to:from:date:message-id:subject: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;
        bh=+3gkhJSybeLuzRksLiExvy3Vid3HmKyKMvvukyABZjE=;
        b=PRt2Brjz4dC3EbWcwNn0wc+LoTw+7sn6t5oMChY63C5q7VP6cDu1+bsuCOy5iMGm7q
         Oln7r7glGeOGdoFxad+o60wAeFFRe1WA3SQh2wUHEWUyRG8KAtkLbyNI6AW0V/QptJFd
         5iJUqGK4m4H3ebYIrzsHtmnyOO+wcMPO7SFUk380ytOogHYP9/EWm13o3Ni5OBVSvyHu
         3RIGyTAKIq37TUSprc67nZdICI56aqa6vnZgmeMe0EDpUBbPFD1+P61VgqMNXhKD02VR
         uzMahrT4RnWWoSVNMDCiYtv9O7R6ajwTWeEjNZ7OfOYkL7HDaGpxmu1PlZcOu4NGCrTj
         VsjA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to: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=+3gkhJSybeLuzRksLiExvy3Vid3HmKyKMvvukyABZjE=;
        b=TcA/gku20qtwBbj/JMQPug7aC/c6AEKn19sXgWX4W2rAwjeIQCogPS7/DsoW/ThX5j
         fHMHmjV6CttobAmXHSng7pzXhTefiQbRbBwSQ7kpA+IJgM8cOc6HaZc9FX+5Agmkgg8/
         RrSg0DRXCGivJVla0e3MRkbxqFl/GKrVdURBMQhdpfQbXofuZhBwsXPTP5mMQnrEYejV
         aFsgnQDwg2LZGGoLg4fWClGl3vCO54fEMQwRNSRCzNFkRJZHzMKoGQ9f19Mkx6Gkof6V
         oX0RnxI7qXqnr3UPXu3ABHolu0l8ZVGnZIN4FzQYljEsKNy5eYDJaUdQayElcK0ErSk1
         JRxw==
X-Gm-Message-State: ABuFfojFPkt/sPFyvVUlhDmCEd2KrW4bpgFKqIpoL3e/DAa9Sax+EaiJ
	HLI1z5D2SNShuZ+8wzuM+yg=
X-Google-Smtp-Source: ACcGV61U5Gc3Wr1dhFmoEaq5PZHoEUhI592eYSzvjvu0eE9qOTjWzszJHqOd/MYm2zZPTQUczQ8RqA==
X-Received: by 2002:a2e:9c49:: with SMTP id t9-v6mr93258ljj.43.1537703703728;
        Sun, 23 Sep 2018 04:55:03 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 2002:a19:500e:: with SMTP id e14-v6ls376249lfb.11.gmail; Sun, 23
 Sep 2018 04:55:01 -0700 (PDT)
X-Received: by 2002:a19:7510:: with SMTP id y16-v6mr3378979lfe.100.1537703701637;
        Sun, 23 Sep 2018 04:55:01 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1537703701; cv=none;
        d=google.com; s=arc-20160816;
        b=Xu3nafY5naf9HqSM+fKc0GL0m+wqzP7+XRt3BXCJ7bc4cPvJpYAqHPXSnujywHaGPq
         RE1jXwy4ut9+O9FsFI3IEhpyH9cJqgJAR9m/H+Vb3E7GhjG8SVcnCjHLbWAu2kGeuq3p
         d7XdwnhR1ZmQHyOi9/WaCx2vmhpQeiIWl4ebNqxLcUD4i7FaXgX7zk3gICl9iwNGq+UD
         jXtngyB/m9cXhKXiDVQ1NFkkznPZLSg36PHjdF49EQLnExUAr0XZ4O+xas1szz4bt7K+
         MEgAbSbP9f3PeSv0zDxn0cxIFuQkV9ssZmM7vgs2AbHqw7IWk9BUfj4iH9nlYPgV0m72
         /UmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version;
        bh=1WfaG3WQEptrkMZAgIipaOHDeHqmB9WwqFatUdstqsY=;
        b=oFUlxbV90gaHq+8C/GcnAWWmD09diZxrsNci8ErL78nYeKMFrlklfGYLbYMCl3BqNa
         XaMBUucLFVv5aitUaRYcUy0CdnvtPohdLP/Tr7nCXKvpo6XS4kXn/8NMWLnmZVd4Zx3y
         b/40xDQ8UwVyiknBTUz7ZgWrt4tIwi3p6bKy0FScYptcvW9G9/3Cqs7GjLBF4kkGi+u/
         eSl9X5qNms1pj41+tcJa+cyOgLKlDPiTLn2o71dZRKYUKJoKR3t25OXnfJPet+z3ZdrC
         U+QKAJCfjqvlGLv+zOeCgD5ZowN/5aPJ2maSTiGEibO2adO/GDc+s7VirFVQY4KjUYb9
         tLUg==
ARC-Authentication-Results: i=1; mx.google.com;
       spf=pass (google.com: domain of mcfarlane.john@gmail.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=mcfarlane.john@gmail.com
Original-Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41])
        by mx.google.com with SMTPS id q5-v6sor13123909lff.24.2018.09.23.04.55.01
        for <std-proposals@isocpp.org>
        (Google Transport Security);
        Sun, 23 Sep 2018 04:55:01 -0700 (PDT)
Received-SPF: pass (google.com: domain of mcfarlane.john@gmail.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41;
X-Received: by 2002:a19:ae15:: with SMTP id f21-v6mr3232249lfc.86.1537703700821;
 Sun, 23 Sep 2018 04:55:00 -0700 (PDT)
In-Reply-To: <CAJ2mQS05Y8ezjYnWwdaj7xxa0=5etZPKBUvkDNtbXCvt=uf_Tg@mail.gmail.com>
X-Original-Sender: john@mcfarlane.name
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of mcfarlane.john@gmail.com designates 209.85.220.41 as permitted
 sender) smtp.mailfrom=mcfarlane.john@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:40214
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/40214>

--000000000000db7e570576888af2
Content-Type: text/plain; charset="UTF-8"

On Sun, 23 Sep 2018 at 00:36 Sarfaraz Nawaz <nawazzz@gmail.com> wrote:

>
> return _left + _right;
>
>
> Is this  a recursive call?
>

It looks that way. I'm not sure overflow checking can really be controlled
without a custom type.

I'm also highly doubtful that throwing an exception is the right thing to
do in most cases. Correct code should be avoiding overflow under nearly all
circumstances. Therefore, overflow is a bug and should not be handled with
exceptions.

But certainly the demand for a way to better handle these errors is only
growing. Sanitizers cannot catch all overflow and  they cannot easily be
applied selectively. Users at least need to be able to opt in to reliable
diagnostics.

On Sat, Sep 22, 2018 at 4:39 PM Denis Kotov <redradist@gmail.com> wrote:

> Hello everyone,
>
> I have faced with an issue when I want for all numeric types create
> general mechanize of checking for overflowing, but to make it optional.
> *My Proposal* is to add possibility to override global operators to make
> possible to add logic for overflow checking:
>
> template <typename TLeft, typename TRight>
> constexpr inline auto operator +(TLeft _left, TRight _right) -> decltype(_left + _right) {
>   if (typeid(decltype(_left + _right)) == typeid(TLeft)) {
>     // Implementation of checking of overflow
>     // For example: If overflow throw exception
>   } else {
>     // Implementation of checking of overflow
>     // For example: If overflow throw exception
>   }
>   return _left + _right;
> }
>
> What do you think about such solution ?
>
> --
> 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/21428a88-efb7-4648-86c6-5dbf19b96519%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/21428a88-efb7-4648-86c6-5dbf19b96519%40isocpp.org?utm_medium=email&utm_source=footer>
> .
>
-- 
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/CAJ2mQS05Y8ezjYnWwdaj7xxa0%3D5etZPKBUvkDNtbXCvt%3Duf_Tg%40mail.gmail.com
<https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAJ2mQS05Y8ezjYnWwdaj7xxa0%3D5etZPKBUvkDNtbXCvt%3Duf_Tg%40mail.gmail.com?utm_medium=email&utm_source=footer>
..

-- 
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/CABPJVnR3yCzLeYKxdt33JXM17vKwm-7LvuMOLrFZFWPSgOnpvg%40mail.gmail.com.

--000000000000db7e570576888af2
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_quote"><div dir=3D"ltr">On Sun, 23 Sep=
 2018 at 00:36 Sarfaraz Nawaz &lt;<a href=3D"mailto:nawazzz@gmail.com">nawa=
zzz@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div d=
ir=3D"ltr"><br><blockquote style=3D"margin:0 0 0 40px;border:none;padding:0=
px"><font size=3D"2"><span style=3D"color:rgb(0,0,128);font-weight:bold">re=
turn </span>_left + _right;</font></blockquote><blockquote style=3D"margin:=
0 0 0 40px;border:none;padding:0px"><div><br></div></blockquote>Is this=C2=
=A0 a recursive call?<br></div></blockquote><div><br></div><div>It looks th=
at way. I&#39;m not sure overflow checking can really be controlled without=
 a custom type.</div><div><br></div><div>I&#39;m also highly doubtful that =
throwing an exception is the right thing to do in most cases. Correct code =
should be avoiding overflow under nearly all circumstances. Therefore, over=
flow is a bug and should not be handled with exceptions.</div><div><br></di=
v><div>But certainly the demand for a way to better handle these errors is =
only growing. Sanitizers cannot catch all overflow and=C2=A0
they cannot easily be applied selectively. Users at least need to be able t=
o opt in to reliable diagnostics.<br></div><div><div dir=3D"ltr"></div><br>=
<div class=3D"gmail_quote"><div dir=3D"ltr">On Sat, Sep 22, 2018 at 4:39 PM=
 Denis Kotov &lt;<a href=3D"mailto:redradist@gmail.com" target=3D"_blank">r=
edradist@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote=
" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><=
div dir=3D"ltr"><div><font size=3D"2">Hello everyone,</font></div><div><fon=
t size=3D"2"><br></font></div><div><font size=3D"2">I have faced with an is=
sue when I want for all numeric types create general mechanize of checking =
for overflowing, but to make it optional.</font></div><div><font size=3D"2"=
><b>My Proposal</b> is to add possibility to override global operators to m=
ake possible to add logic for overflow checking:</font></div><div><br></div=
><div><pre style=3D"background-color:#ffffff;color:#000000;font-family:&#39=
;DejaVu Sans Mono&#39;;font-size:11.3pt"><font size=3D"2"><span style=3D"co=
lor:#000080;font-weight:bold">template </span>&lt;<span style=3D"color:#000=
080;font-weight:bold">typename </span><span style=3D"color:#371f80">TLeft</=
span>, <span style=3D"color:#000080;font-weight:bold">typename </span><span=
 style=3D"color:#371f80">TRight</span>&gt;<br><span style=3D"color:#000080;=
font-weight:bold">constexpr inline auto operator </span>+(<span style=3D"co=
lor:#371f80">TLeft </span>_left, <span style=3D"color:#371f80">TRight </spa=
n>_right) -&gt; <span style=3D"color:#000080;font-weight:bold">decltype</sp=
an>(_left + _right) {<br>  <span style=3D"color:#000080;font-weight:bold">i=
f </span>(<span style=3D"color:#000080;font-weight:bold">typeid</span>(<spa=
n style=3D"color:#000080;font-weight:bold">decltype</span>(_left + _right))=
 <span style=3D"color:#008080">=3D=3D </span><span style=3D"color:#000080;f=
ont-weight:bold">typeid</span>(<span style=3D"color:#371f80">TLeft</span>))=
 {<br>    <span style=3D"color:#808080;font-style:italic">// Implementation=
 of checking of overflow<br>    // For example: If overflow t</span></font>=
<font size=3D"2"><span style=3D"color:#808080;font-style:italic"><font size=
=3D"2"><span style=3D"color:#808080;font-style:italic">hrow exception</span=
></font></span><span style=3D"color:#808080;font-style:italic"><br>  </span=
>} <span style=3D"color:#000080;font-weight:bold">else </span>{<br>    <spa=
n style=3D"color:#808080;font-style:italic">// Implementation of checking o=
f overflow<br></span>    <span style=3D"color:#808080;font-style:italic"><s=
pan style=3D"color:#808080;font-style:italic">// For example: </span></span=
></font><font size=3D"2"><span style=3D"color:#808080;font-style:italic"><s=
pan style=3D"color:#808080;font-style:italic"></span></span><span style=3D"=
color:#808080;font-style:italic"><font size=3D"2"><span style=3D"color:#808=
080;font-style:italic">If overflow t</span></font><font size=3D"2"><span st=
yle=3D"color:#808080;font-style:italic"><font size=3D"2"><span style=3D"col=
or:#808080;font-style:italic">hrow exception</span></font></span><span styl=
e=3D"color:#808080;font-style:italic"><br></span></font>  </span>}<br>  <sp=
an style=3D"color:#000080;font-weight:bold">return </span>_left + _right;<b=
r>}</font><br><br><font size=3D"2"><span style=3D"font-family:arial,sans-se=
rif">What do you think about such solution ?</span></font><br></pre></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" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">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/21428a88-efb7-4648-86c6-5dbf19b96519%=
40isocpp.org?utm_medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank">=
https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/21428a88-efb7-=
4648-86c6-5dbf19b96519%40isocpp.org</a>.<br>
</blockquote></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" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">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/CAJ2mQS05Y8ezjYnWwdaj7xxa0%3D5etZPKBU=
vkDNtbXCvt%3Duf_Tg%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=3Dfoo=
ter" target=3D"_blank">https://groups.google.com/a/isocpp.org/d/msgid/std-p=
roposals/CAJ2mQS05Y8ezjYnWwdaj7xxa0%3D5etZPKBUvkDNtbXCvt%3Duf_Tg%40mail.gma=
il.com</a>.<br>
</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/CABPJVnR3yCzLeYKxdt33JXM17vKwm-7LvuMO=
LrFZFWPSgOnpvg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CABPJVnR3yCzLeYKx=
dt33JXM17vKwm-7LvuMOLrFZFWPSgOnpvg%40mail.gmail.com</a>.<br />

--000000000000db7e570576888af2--

.
