Topic: enabling 'static' method specifier as optional


Author: Daniel Gutson <danielgutson@gmail.com>
Date: Mon, 25 Jun 2018 17:24:11 -0300
Raw View
--0000000000001bf52c056f7d2a5d
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

I know this sort of changes might have lost the train, but this one may be
worth to discuss.

When reading a definition of the method, we can tell its CV-qualification.
However, when it is not CV-qualified, we cannot tell whether it is static
or not, leading us to go and look for the declaration.
I propose to allow (optionally) the 'static' keyword to the declarations of
static methods:

static void Class::method()
{
}

Note that this is mostly practical enhancement (and AFAIK non breaking,
backward compatible one) targeting ease of maintainability.

Having this feature, compilers can then provide a command line flag to turn
on a warning when the keyword is missing in the declaration.

    Daniel.

--=20
Who=E2=80=99s got the sweetest disposition?
One guess, that=E2=80=99s who?
Who=E2=80=99d never, ever start an argument?
Who never shows a bit of temperament?
Who's never wrong but always right?
Who'd never dream of starting a fight?
Who get stuck with all the bad luck?

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-3JLQQu7K1kztgnp0GN%2Bh1QwRfuMCCyCJjNGFbvf=
QG8yQ%40mail.gmail.com.

--0000000000001bf52c056f7d2a5d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">I know this sort of changes might have lost the train, but=
 this one may be worth to discuss.<div><br></div><div>When reading a defini=
tion of the method, we can tell its CV-qualification.</div><div>However, wh=
en it is not CV-qualified, we cannot tell whether it is static or not, lead=
ing us to go and look for the declaration.</div><div>I propose to allow (op=
tionally) the &#39;static&#39; keyword to the declarations of static method=
s:</div><div><br></div><div>static void Class::method()</div><div>{</div><d=
iv>}</div><div><br></div><div>Note that this is mostly practical enhancemen=
t (and AFAIK non breaking, backward compatible one) targeting ease of maint=
ainability.</div><div><br></div><div>Having this feature, compilers can the=
n provide a command line flag to turn on a warning when the keyword is miss=
ing in the declaration.</div><div><br></div><div>=C2=A0 =C2=A0 Daniel.<br c=
lear=3D"all"><div><br></div>-- <br><div class=3D"gmail_signature" data-smar=
tmail=3D"gmail_signature">Who=E2=80=99s got the sweetest disposition?<br>On=
e guess, that=E2=80=99s who?<br>Who=E2=80=99d never, ever start an argument=
?<br>Who never shows a bit of temperament?<br>Who&#39;s never wrong but alw=
ays right?<br>Who&#39;d never dream of starting a fight?<br>Who get stuck w=
ith all the bad luck? </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/CAFdMc-3JLQQu7K1kztgnp0GN%2Bh1QwRfuMC=
CyCJjNGFbvfQG8yQ%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-3JLQQu7K=
1kztgnp0GN%2Bh1QwRfuMCCyCJjNGFbvfQG8yQ%40mail.gmail.com</a>.<br />

--0000000000001bf52c056f7d2a5d--

.


Author: Nicolas Lesser <blitzrakete@gmail.com>
Date: Mon, 25 Jun 2018 22:41:34 +0200
Raw View
--000000000000b4b285056f7d6f4f
Content-Type: text/plain; charset="UTF-8"

On Mon, Jun 25, 2018 at 10:24 PM Daniel Gutson <danielgutson@gmail.com>
wrote:

> I know this sort of changes might have lost the train, but this one may be
> worth to discuss.
>
> When reading a definition of the method, we can tell its CV-qualification.
>

Because the cv qualifications are part of the type AFAIK.


> However, when it is not CV-qualified, we cannot tell whether it is static
> or not, leading us to go and look for the declaration.
> I propose to allow (optionally) the 'static' keyword to the declarations
> of static methods:
>

But does it really matter that we can't? Personally, I've never been
confused whether a function is static or not. It can mostly be inferred
from the context I think.

static void Class::method()
> {
> }
>
> Note that this is mostly practical enhancement (and AFAIK non breaking,
> backward compatible one) targeting ease of maintainability.
>

One downside is that one might think that this is a function defined with
internal linkage. Also, this adds yet *another* use of static; don't we
have enough ;)

--
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/CALmDwq1B3GOTPbT9DZ%2BKLmJNem66%2BByKO1fg%2BX2xHuCMKy8tQA%40mail.gmail.com.

--000000000000b4b285056f7d6f4f
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 Mon, Jun 25=
, 2018 at 10:24 PM Daniel Gutson &lt;<a href=3D"mailto:danielgutson@gmail.c=
om">danielgutson@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex"><div dir=3D"ltr">I know this sort of changes might have lost the tra=
in, but this one may be worth to discuss.<div><br></div><div>When reading a=
 definition of the method, we can tell its CV-qualification.</div></div></b=
lockquote><div>=C2=A0</div><div>Because the cv qualifications are part of t=
he type AFAIK.</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div di=
r=3D"ltr"><div>However, when it is not CV-qualified, we cannot tell whether=
 it is static or not, leading us to go and look for the declaration.</div><=
div>I propose to allow (optionally) the &#39;static&#39; keyword to the dec=
larations of static methods:</div></div></blockquote><div><br></div><div>Bu=
t does it really matter that we can&#39;t? Personally, I&#39;ve never been =
confused whether a function is static or not. It can mostly be inferred fro=
m the context I think.=C2=A0</div><div><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>static void Class::method()</div><div>{</div><di=
v>}</div><div><br></div><div>Note that this is mostly practical enhancement=
 (and AFAIK non breaking, backward compatible one) targeting ease of mainta=
inability.</div></div></blockquote><div><br></div><div>One downside is that=
 one might think that this is a function defined with internal linkage. Als=
o, this adds yet *another* use of static; don&#39;t we have enough ;)=C2=A0=
</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/CALmDwq1B3GOTPbT9DZ%2BKLmJNem66%2BByK=
O1fg%2BX2xHuCMKy8tQA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CALmDwq1B3G=
OTPbT9DZ%2BKLmJNem66%2BByKO1fg%2BX2xHuCMKy8tQA%40mail.gmail.com</a>.<br />

--000000000000b4b285056f7d6f4f--

.


Author: Daniel Gutson <danielgutson@gmail.com>
Date: Mon, 25 Jun 2018 17:48:13 -0300
Raw View
--0000000000001eb7b9056f7d8097
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Jun 25, 2018 at 5:41 PM, Nicolas Lesser <blitzrakete@gmail.com>
wrote:

> On Mon, Jun 25, 2018 at 10:24 PM Daniel Gutson <danielgutson@gmail.com>
> wrote:
>
>> I know this sort of changes might have lost the train, but this one may
>> be worth to discuss.
>>
>> When reading a definition of the method, we can tell its CV-qualificatio=
n.
>>
>
> Because the cv qualifications are part of the type AFAIK.
>

Correct.


>
>
>> However, when it is not CV-qualified, we cannot tell whether it is stati=
c
>> or not, leading us to go and look for the declaration.
>> I propose to allow (optionally) the 'static' keyword to the declarations
>> of static methods:
>>
>
> But does it really matter that we can't? Personally, I've never been
> confused whether a function is static or not. It can mostly be inferred
> from the context I think.
>

This is about reading huge amount of lines of code when mantaining very
large legacy systems, and/or doing a peer review. Context requires seeing
the caller, sometimes it is not even available.


>
> static void Class::method()
>> {
>> }
>>
>> Note that this is mostly practical enhancement (and AFAIK non breaking,
>> backward compatible one) targeting ease of maintainability.
>>
>
> One downside is that one might think that this is a function defined with
> internal linkage. Also, this adds yet *another* use of static; don't we
> have enough ;)
>

Incorrect: it does not add a new use of static since it is already used in
the declaration. I'm suggesting enabling it writing it *also* in the
definition.


> --
> 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/CALmDwq1B3GOTPbT9DZ%
> 2BKLmJNem66%2BByKO1fg%2BX2xHuCMKy8tQA%40mail.gmail.com
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CALmDwq1B3G=
OTPbT9DZ%2BKLmJNem66%2BByKO1fg%2BX2xHuCMKy8tQA%40mail.gmail.com?utm_medium=
=3Demail&utm_source=3Dfooter>
> .
>



--=20
Who=E2=80=99s got the sweetest disposition?
One guess, that=E2=80=99s who?
Who=E2=80=99d never, ever start an argument?
Who never shows a bit of temperament?
Who's never wrong but always right?
Who'd never dream of starting a fight?
Who get stuck with all the bad luck?

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-26BzxPwu0iL9ZNt8SjdXmbnB8CSmqkJY3xu704oPb=
1aw%40mail.gmail.com.

--0000000000001eb7b9056f7d8097
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jun 25, 2018 at 5:41 PM, Nicolas Lesser <span dir=3D"ltr">&lt;<=
a href=3D"mailto:blitzrakete@gmail.com" target=3D"_blank">blitzrakete@gmail=
..com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"ma=
rgin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"lt=
r"><div class=3D"gmail_quote"><span class=3D""><div dir=3D"ltr">On Mon, Jun=
 25, 2018 at 10:24 PM Daniel Gutson &lt;<a href=3D"mailto:danielgutson@gmai=
l.com" target=3D"_blank">danielgutson@gmail.com</a>&gt; wrote:<br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #=
ccc solid;padding-left:1ex"><div dir=3D"ltr">I know this sort of changes mi=
ght have lost the train, but this one may be worth to discuss.<div><br></di=
v><div>When reading a definition of the method, we can tell its CV-qualific=
ation.</div></div></blockquote><div>=C2=A0</div></span><div>Because the cv =
qualifications are part of the type AFAIK.</div></div></div></blockquote><d=
iv><br></div><div>Correct.</div><div>=C2=A0</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 class=3D"gmail_quote"><span class=3D""><div>=C2=
=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>However, when=
 it is not CV-qualified, we cannot tell whether it is static or not, leadin=
g us to go and look for the declaration.</div><div>I propose to allow (opti=
onally) the &#39;static&#39; keyword to the declarations of static methods:=
</div></div></blockquote><div><br></div></span><div>But does it really matt=
er that we can&#39;t? Personally, I&#39;ve never been confused whether a fu=
nction is static or not. It can mostly be inferred from the context I think=
..=C2=A0</div></div></div></blockquote><div><br></div><div>This is about rea=
ding huge amount of lines of code when mantaining very large legacy systems=
, and/or doing a peer review. Context requires seeing the caller, sometimes=
 it is not even available.</div><div>=C2=A0</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 class=3D"gmail_quote"><span class=3D""><div><br>=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l=
eft:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>static void Clas=
s::method()</div><div>{</div><div>}</div><div><br></div><div>Note that this=
 is mostly practical enhancement (and AFAIK non breaking, backward compatib=
le one) targeting ease of maintainability.</div></div></blockquote><div><br=
></div></span><div>One downside is that one might think that this is a func=
tion defined with internal linkage. Also, this adds yet *another* use of st=
atic; don&#39;t we have enough ;)=C2=A0</div></div></div></blockquote><div>=
<br></div><div>Incorrect: it does not add a new use of static since it is a=
lready used in the declaration. I&#39;m suggesting enabling it writing it *=
also* in the definition.</div><div>=C2=A0</div><blockquote class=3D"gmail_q=
uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e=
x"><span class=3D"HOEnZb"><font color=3D"#888888">

<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@<wbr>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/CALmDwq1B3GOTPbT9DZ%2BKLmJNem66%2BByK=
O1fg%2BX2xHuCMKy8tQA%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=3Df=
ooter" target=3D"_blank">https://groups.google.com/a/<wbr>isocpp.org/d/msgi=
d/std-<wbr>proposals/CALmDwq1B3GOTPbT9DZ%<wbr>2BKLmJNem66%2BByKO1fg%<wbr>2B=
X2xHuCMKy8tQA%40mail.gmail.<wbr>com</a>.<br>
</font></span></blockquote></div><br><br clear=3D"all"><div><br></div>-- <b=
r><div class=3D"gmail_signature" data-smartmail=3D"gmail_signature">Who=E2=
=80=99s got the sweetest disposition?<br>One guess, that=E2=80=99s who?<br>=
Who=E2=80=99d never, ever start an argument?<br>Who never shows a bit of te=
mperament?<br>Who&#39;s never wrong but always right?<br>Who&#39;d never dr=
eam of starting a fight?<br>Who get stuck with all the bad luck? </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/CAFdMc-26BzxPwu0iL9ZNt8SjdXmbnB8CSmqk=
JY3xu704oPb1aw%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-26BzxPwu0i=
L9ZNt8SjdXmbnB8CSmqkJY3xu704oPb1aw%40mail.gmail.com</a>.<br />

--0000000000001eb7b9056f7d8097--

.


Author: Barry Revzin <barry.revzin@gmail.com>
Date: Mon, 25 Jun 2018 13:51:25 -0700 (PDT)
Raw View
------=_Part_37292_1099106700.1529959885894
Content-Type: multipart/alternative;
 boundary="----=_Part_37293_192279961.1529959885894"

------=_Part_37293_192279961.1529959885894
Content-Type: text/plain; charset="UTF-8"



On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson wrote:
>
> I know this sort of changes might have lost the train, but this one may be
> worth to discuss.
>
> When reading a definition of the method, we can tell its CV-qualification.
> However, when it is not CV-qualified, we cannot tell whether it is static
> or not, leading us to go and look for the declaration.
> I propose to allow (optionally) the 'static' keyword to the declarations
> of static methods:
>
> static void Class::method()
> {
> }
>
> Note that this is mostly practical enhancement (and AFAIK non breaking,
> backward compatible one) targeting ease of maintainability.
>
> Having this feature, compilers can then provide a command line flag to
> turn on a warning when the keyword is missing in the declaration.
>
>     Daniel.
>

Just static? What about all the other stuff that we currently only put on
the declaration (e.g. explicit, virtual, override) ?

Barry

--
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/cb509111-eddd-4698-9de0-ebbe7e5c13ff%40isocpp.org.

------=_Part_37293_192279961.1529959885894
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><br>On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Dani=
el Gutson wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin=
-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"lt=
r">I know this sort of changes might have lost the train, but this one may =
be worth to discuss.<div><br></div><div>When reading a definition of the me=
thod, we can tell its CV-qualification.</div><div>However, when it is not C=
V-qualified, we cannot tell whether it is static or not, leading us to go a=
nd look for the declaration.</div><div>I propose to allow (optionally) the =
&#39;static&#39; keyword to the declarations of static methods:</div><div><=
br></div><div>static void Class::method()</div><div>{</div><div>}</div><div=
><br></div><div>Note that this is mostly practical enhancement (and AFAIK n=
on breaking, backward compatible one) targeting ease of maintainability.</d=
iv><div><br></div><div>Having this feature, compilers can then provide a co=
mmand line flag to turn on a warning when the keyword is missing in the dec=
laration.</div><div><br></div><div>=C2=A0 =C2=A0 Daniel.</div></div></block=
quote><div><br></div><div>Just static? What about all the other stuff that =
we currently only put on the declaration (e.g. explicit, virtual, override)=
 ?</div><div><br></div><div>Barry</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/cb509111-eddd-4698-9de0-ebbe7e5c13ff%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/cb509111-eddd-4698-9de0-ebbe7e5c13ff=
%40isocpp.org</a>.<br />

------=_Part_37293_192279961.1529959885894--

------=_Part_37292_1099106700.1529959885894--

.


Author: Nicolas Lesser <blitzrakete@gmail.com>
Date: Mon, 25 Jun 2018 22:51:24 +0200
Raw View
--000000000000dab42c056f7d92b2
Content-Type: text/plain; charset="UTF-8"

On Mon, Jun 25, 2018 at 10:48 PM Daniel Gutson <danielgutson@gmail.com>
wrote:

> Incorrect: it does not add a new use of static since it is already used in
> the declaration. I'm suggesting enabling it writing it *also* in the
> definition.
>

I'd argue that it does, since it allows the use of static in a new context
not previously allowed.

Anyways, I'm pretty neutral on this proposal. But I would agree that it
might make sense to also allow the other specifiers like Barry mentions.

--
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/CALmDwq0RvtumQ%2BWsb%2BQ%3DVYn9NY7Gcu5fZyokv1zAAcmmjLdYyg%40mail.gmail.com.

--000000000000dab42c056f7d92b2
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 Mon, Jun 25=
, 2018 at 10:48 PM Daniel Gutson &lt;<a href=3D"mailto:danielgutson@gmail.c=
om">danielgutson@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex"><div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quot=
e"><div>Incorrect: it does not add a new use of static since it is already =
used in the declaration. I&#39;m suggesting enabling it writing it *also* i=
n the definition.</div></div></div></div></blockquote><div><br></div><div>I=
&#39;d argue that it does, since it allows the use of static in a new conte=
xt not previously allowed.=C2=A0</div><div><br></div><div>Anyways, I&#39;m =
pretty neutral on this proposal. But I would agree that it might make sense=
 to also allow the other specifiers like Barry mentions.</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/CALmDwq0RvtumQ%2BWsb%2BQ%3DVYn9NY7Gcu=
5fZyokv1zAAcmmjLdYyg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CALmDwq0Rvt=
umQ%2BWsb%2BQ%3DVYn9NY7Gcu5fZyokv1zAAcmmjLdYyg%40mail.gmail.com</a>.<br />

--000000000000dab42c056f7d92b2--

.


Author: Daniel Gutson <danielgutson@gmail.com>
Date: Mon, 25 Jun 2018 18:07:58 -0300
Raw View
--000000000000b49b96056f7dc689
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Jun 25, 2018 at 5:51 PM, Barry Revzin <barry.revzin@gmail.com>
wrote:

>
>
> On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson wrote:
>>
>> I know this sort of changes might have lost the train, but this one may
>> be worth to discuss.
>>
>> When reading a definition of the method, we can tell its CV-qualificatio=
n.
>> However, when it is not CV-qualified, we cannot tell whether it is stati=
c
>> or not, leading us to go and look for the declaration.
>> I propose to allow (optionally) the 'static' keyword to the declarations
>> of static methods:
>>
>> static void Class::method()
>> {
>> }
>>
>> Note that this is mostly practical enhancement (and AFAIK non breaking,
>> backward compatible one) targeting ease of maintainability.
>>
>> Having this feature, compilers can then provide a command line flag to
>> turn on a warning when the keyword is missing in the declaration.
>>
>>     Daniel.
>>
>
> Just static? What about all the other stuff that we currently only put on
> the declaration (e.g. explicit, virtual, override) ?
>

Agree.


>
> Barry
>
> --
> 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/cb509111-eddd-4698-
> 9de0-ebbe7e5c13ff%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/cb509111-ed=
dd-4698-9de0-ebbe7e5c13ff%40isocpp.org?utm_medium=3Demail&utm_source=3Dfoot=
er>
> .
>



--=20
Who=E2=80=99s got the sweetest disposition?
One guess, that=E2=80=99s who?
Who=E2=80=99d never, ever start an argument?
Who never shows a bit of temperament?
Who's never wrong but always right?
Who'd never dream of starting a fight?
Who get stuck with all the bad luck?

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-0b9KpxCiUBvPOAFTdAKdpWd56H%2BpJwrWq0ZBs9g=
OwQzw%40mail.gmail.com.

--000000000000b49b96056f7dc689
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jun 25, 2018 at 5:51 PM, Barry Revzin <span dir=3D"ltr">&lt;<a =
href=3D"mailto:barry.revzin@gmail.com" target=3D"_blank">barry.revzin@gmail=
..com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"ma=
rgin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"lt=
r"><span class=3D""><br><br>On Monday, June 25, 2018 at 3:24:13 PM UTC-5, D=
aniel Gutson wrote:<blockquote class=3D"gmail_quote" style=3D"margin:0;marg=
in-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"=
>I know this sort of changes might have lost the train, but this one may be=
 worth to discuss.<div><br></div><div>When reading a definition of the meth=
od, we can tell its CV-qualification.</div><div>However, when it is not CV-=
qualified, we cannot tell whether it is static or not, leading us to go and=
 look for the declaration.</div><div>I propose to allow (optionally) the &#=
39;static&#39; keyword to the declarations of static methods:</div><div><br=
></div><div>static void Class::method()</div><div>{</div><div>}</div><div><=
br></div><div>Note that this is mostly practical enhancement (and AFAIK non=
 breaking, backward compatible one) targeting ease of maintainability.</div=
><div><br></div><div>Having this feature, compilers can then provide a comm=
and line flag to turn on a warning when the keyword is missing in the decla=
ration.</div><div><br></div><div>=C2=A0 =C2=A0 Daniel.</div></div></blockqu=
ote><div><br></div></span><div>Just static? What about all the other stuff =
that we currently only put on the declaration (e.g. explicit, virtual, over=
ride) ?</div></div></blockquote><div><br></div><div>Agree.</div><div>=C2=A0=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l=
eft:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div><br></div><div>B=
arry</div></div><span class=3D"">

<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@<wbr>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></span>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/cb509111-eddd-4698-9de0-ebbe7e5c13ff%=
40isocpp.org?utm_medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank">=
https://groups.google.com/a/<wbr>isocpp.org/d/msgid/std-<wbr>proposals/cb50=
9111-eddd-4698-<wbr>9de0-ebbe7e5c13ff%40isocpp.org</a><wbr>.<br>
</blockquote></div><br><br clear=3D"all"><div><br></div>-- <br><div class=
=3D"gmail_signature" data-smartmail=3D"gmail_signature">Who=E2=80=99s got t=
he sweetest disposition?<br>One guess, that=E2=80=99s who?<br>Who=E2=80=99d=
 never, ever start an argument?<br>Who never shows a bit of temperament?<br=
>Who&#39;s never wrong but always right?<br>Who&#39;d never dream of starti=
ng a fight?<br>Who get stuck with all the bad luck? </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/CAFdMc-0b9KpxCiUBvPOAFTdAKdpWd56H%2Bp=
JwrWq0ZBs9gOwQzw%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-0b9KpxCi=
UBvPOAFTdAKdpWd56H%2BpJwrWq0ZBs9gOwQzw%40mail.gmail.com</a>.<br />

--000000000000b49b96056f7dc689--

.


Author: Jake Arkinstall <jake.arkinstall@gmail.com>
Date: Mon, 25 Jun 2018 22:09:45 +0100
Raw View
--000000000000a8773d056f7dcd8b
Content-Type: text/plain; charset="UTF-8"

To be honest, I often find myself writing it in the declarations by nature
- I subconsciously expect it to belong there. For some projects I leave it
in as a comment, when it's appropriate to be crystal clear.

I wouldn't mind it being there - though there's no purpose to it.

It doesn't add a new context for the word "static" for the user, but it's a
different story in the internals. It can't be a keyword that is just
passively ignored, because it should error if the method isn't static - so
it does seem like there will be some work involved that doesn't quite
justify the outcome unless there's some more motivation. I can't think of
any that don't sound horrible - allowing static and non-static versions of
the same name, for example...  there be dragons.


On Mon, 25 Jun 2018, 21:51 Barry Revzin, <barry.revzin@gmail.com> wrote:

>
>
> On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson wrote:
>>
>> I know this sort of changes might have lost the train, but this one may
>> be worth to discuss.
>>
>> When reading a definition of the method, we can tell its CV-qualification.
>> However, when it is not CV-qualified, we cannot tell whether it is static
>> or not, leading us to go and look for the declaration.
>> I propose to allow (optionally) the 'static' keyword to the declarations
>> of static methods:
>>
>> static void Class::method()
>> {
>> }
>>
>> Note that this is mostly practical enhancement (and AFAIK non breaking,
>> backward compatible one) targeting ease of maintainability.
>>
>> Having this feature, compilers can then provide a command line flag to
>> turn on a warning when the keyword is missing in the declaration.
>>
>>     Daniel.
>>
>
> Just static? What about all the other stuff that we currently only put on
> the declaration (e.g. explicit, virtual, override) ?
>
> Barry
>
> --
> 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/cb509111-eddd-4698-9de0-ebbe7e5c13ff%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/cb509111-eddd-4698-9de0-ebbe7e5c13ff%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/CAC%2B0CCNqXpdhHFAnaCDQk2%3DT8%2BiUuF1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com.

--000000000000a8773d056f7dcd8b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div>To be honest, I often find myself writing it in the =
declarations by nature - I subconsciously expect it to belong there. For so=
me projects I leave it in as a comment, when it&#39;s appropriate to be cry=
stal clear.</div><div dir=3D"auto"><br></div><div dir=3D"auto">I wouldn&#39=
;t mind it being there - though there&#39;s no purpose to it.</div><div dir=
=3D"auto"><br></div><div dir=3D"auto">It doesn&#39;t add a new context for =
the word &quot;static&quot; for the user, but it&#39;s a different story in=
 the internals. It can&#39;t be a keyword that is just passively ignored, b=
ecause it should error if the method isn&#39;t static - so it does seem lik=
e there will be some work involved that doesn&#39;t quite justify the outco=
me unless there&#39;s some more motivation. I can&#39;t think of any that d=
on&#39;t sound horrible - allowing static and non-static versions of the sa=
me name, for example...=C2=A0 there be dragons.=C2=A0</div><div dir=3D"auto=
"><br></div><div dir=3D"auto"><br></div><div dir=3D"auto"><div class=3D"gma=
il_quote" dir=3D"auto"><div dir=3D"ltr">On Mon, 25 Jun 2018, 21:51 Barry Re=
vzin, &lt;<a href=3D"mailto:barry.revzin@gmail.com" rel=3D"noreferrer noref=
errer" target=3D"_blank">barry.revzin@gmail.com</a>&gt; wrote:<br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #=
ccc solid;padding-left:1ex"><div dir=3D"ltr"><br><br>On Monday, June 25, 20=
18 at 3:24:13 PM UTC-5, Daniel Gutson wrote:<blockquote class=3D"gmail_quot=
e" style=3D"margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-l=
eft:1ex"><div dir=3D"ltr">I know this sort of changes might have lost the t=
rain, but this one may be worth to discuss.<div><br></div><div>When reading=
 a definition of the method, we can tell its CV-qualification.</div><div>Ho=
wever, when it is not CV-qualified, we cannot tell whether it is static or =
not, leading us to go and look for the declaration.</div><div>I propose to =
allow (optionally) the &#39;static&#39; keyword to the declarations of stat=
ic methods:</div><div><br></div><div>static void Class::method()</div><div>=
{</div><div>}</div><div><br></div><div>Note that this is mostly practical e=
nhancement (and AFAIK non breaking, backward compatible one) targeting ease=
 of maintainability.</div><div><br></div><div>Having this feature, compiler=
s can then provide a command line flag to turn on a warning when the keywor=
d is missing in the declaration.</div><div><br></div><div>=C2=A0 =C2=A0 Dan=
iel.</div></div></blockquote><div><br></div><div>Just static? What about al=
l the other stuff that we currently only put on the declaration (e.g. expli=
cit, virtual, override) ?</div><div><br></div><div>Barry</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" rel=3D"nore=
ferrer noreferrer noreferrer" target=3D"_blank">std-proposals+unsubscribe@i=
socpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" rel=3D"noreferrer noreferrer noreferrer" target=3D"_blank">std-propos=
als@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/cb509111-eddd-4698-9de0-ebbe7e5c13ff%=
40isocpp.org?utm_medium=3Demail&amp;utm_source=3Dfooter" rel=3D"noreferrer =
noreferrer noreferrer" target=3D"_blank">https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/cb509111-eddd-4698-9de0-ebbe7e5c13ff%40isocpp.or=
g</a>.<br>
</blockquote></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/CAC%2B0CCNqXpdhHFAnaCDQk2%3DT8%2BiUuF=
1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com?utm_medium=3Demail&utm_source=3Df=
ooter">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0=
CCNqXpdhHFAnaCDQk2%3DT8%2BiUuF1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com</a>=
..<br />

--000000000000a8773d056f7dcd8b--

.


Author: Tony V E <tvaneerd@gmail.com>
Date: Mon, 25 Jun 2018 17:13:55 -0400
Raw View
<html><head></head><body lang=3D"en-US" style=3D"background-color: rgb(255,=
 255, 255); line-height: initial;">                                        =
                                              <div style=3D"width: 100%; fo=
nt-size: initial; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif=
; color: rgb(31, 73, 125); text-align: initial; background-color: rgb(255, =
255, 255);">I'd be fore this.</div><div style=3D"width: 100%; font-size: in=
itial; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif; color: rg=
b(31, 73, 125); text-align: initial; background-color: rgb(255, 255, 255);"=
>I often add /*static*/ to these functions already. </div>                 =
                                                                           =
                                         <div style=3D"width: 100%; font-si=
ze: initial; font-family: Calibri, 'Slate Pro', sans-serif, sans-serif; col=
or: rgb(31, 73, 125); text-align: initial; background-color: rgb(255, 255, =
255);"><br style=3D"display:initial"></div>                                =
                                                                           =
                                                                           =
             <div style=3D"font-size: initial; font-family: Calibri, 'Slate=
 Pro', sans-serif, sans-serif; color: rgb(31, 73, 125); text-align: initial=
; background-color: rgb(255, 255, 255);">Sent&nbsp;from&nbsp;my&nbsp;BlackB=
erry&nbsp;portable&nbsp;Babbage&nbsp;Device</div>                          =
                                                                           =
                                                                           =
  <table width=3D"100%" style=3D"background-color:white;border-spacing:0px;=
"> <tbody><tr><td colspan=3D"2" style=3D"font-size: initial; text-align: in=
itial; background-color: rgb(255, 255, 255);">                           <d=
iv style=3D"border-style: solid none none; border-top-color: rgb(181, 196, =
223); border-top-width: 1pt; padding: 3pt 0in 0in; font-family: Tahoma, 'BB=
 Alpha Sans', 'Slate Pro'; font-size: 10pt;">  <div><b>From: </b>Daniel Gut=
son</div><div><b>Sent: </b>Monday, June 25, 2018 4:24 PM</div><div><b>To: <=
/b>std-proposals</div><div><b>Reply To: </b>std-proposals@isocpp.org</div><=
div><b>Subject: </b>[std-proposals] enabling 'static' method specifier as o=
ptional</div></div></td></tr></tbody></table><div style=3D"border-style: so=
lid none none; border-top-color: rgb(186, 188, 209); border-top-width: 1pt;=
 font-size: initial; text-align: initial; background-color: rgb(255, 255, 2=
55);"></div><br><div id=3D"_originalContent" style=3D""><div dir=3D"ltr">I =
know this sort of changes might have lost the train, but this one may be wo=
rth to discuss.<div><br></div><div>When reading a definition of the method,=
 we can tell its CV-qualification.</div><div>However, when it is not CV-qua=
lified, we cannot tell whether it is static or not, leading us to go and lo=
ok for the declaration.</div><div>I propose to allow (optionally) the 'stat=
ic' keyword to the declarations of static methods:</div><div><br></div><div=
>static void Class::method()</div><div>{</div><div>}</div><div><br></div><d=
iv>Note that this is mostly practical enhancement (and AFAIK non breaking, =
backward compatible one) targeting ease of maintainability.</div><div><br><=
/div><div>Having this feature, compilers can then provide a command line fl=
ag to turn on a warning when the keyword is missing in the declaration.</di=
v><div><br></div><div>&nbsp; &nbsp; Daniel.<br clear=3D"all"><div><br></div=
>-- <br><div class=3D"gmail_signature" data-smartmail=3D"gmail_signature">W=
ho=E2=80=99s got the sweetest disposition?<br>One guess, that=E2=80=99s who=
?<br>Who=E2=80=99d never, ever start an argument?<br>Who never shows a bit =
of temperament?<br>Who's never wrong but always right?<br>Who'd never dream=
 of starting a fight?<br>Who get stuck with all the bad luck? </div>
</div></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" 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/CAFdMc-3JLQQu7K1kztgnp0GN%2Bh1QwRfuMC=
CyCJjNGFbvfQG8yQ%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-3JLQ=
Qu7K1kztgnp0GN%2Bh1QwRfuMCCyCJjNGFbvfQG8yQ%40mail.gmail.com</a>.<br>
<br><!--end of _originalContent --></div></body></html>

<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/20180625211355.5193804.22581.56039%40=
gmail.com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com=
/a/isocpp.org/d/msgid/std-proposals/20180625211355.5193804.22581.56039%40gm=
ail.com</a>.<br />

.


Author: Daniel Gutson <danielgutson@gmail.com>
Date: Mon, 25 Jun 2018 18:22:15 -0300
Raw View
--000000000000c8038c056f7df991
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Jun 25, 2018 at 6:09 PM, Jake Arkinstall <jake.arkinstall@gmail.com=
>
wrote:

> To be honest, I often find myself writing it in the declarations by natur=
e
> - I subconsciously expect it to belong there. For some projects I leave i=
t
> in as a comment, when it's appropriate to be crystal clear.
>
> I wouldn't mind it being there - though there's no purpose to it.
>
> It doesn't add a new context for the word "static" for the user, but it's
> a different story in the internals. It can't be a keyword that is just
> passively ignored, because it should error if the method isn't static - s=
o
> it does seem like there will be some work involved that doesn't quite
> justify the outcome unless there's some more motivation. I can't think of
> any that don't sound horrible - allowing static and non-static versions o=
f
> the same name, for example...  there be dragons.
>

That should clearly be ill-formed.
The rule should be:
'static' in out-class definition =3D> 'static' in declaration

(in the form P =3D> Q , !Q =3D> !P)


>
>
> On Mon, 25 Jun 2018, 21:51 Barry Revzin, <barry.revzin@gmail.com> wrote:
>
>>
>>
>> On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson wrote:
>>>
>>> I know this sort of changes might have lost the train, but this one may
>>> be worth to discuss.
>>>
>>> When reading a definition of the method, we can tell its
>>> CV-qualification.
>>> However, when it is not CV-qualified, we cannot tell whether it is
>>> static or not, leading us to go and look for the declaration.
>>> I propose to allow (optionally) the 'static' keyword to the declaration=
s
>>> of static methods:
>>>
>>> static void Class::method()
>>> {
>>> }
>>>
>>> Note that this is mostly practical enhancement (and AFAIK non breaking,
>>> backward compatible one) targeting ease of maintainability.
>>>
>>> Having this feature, compilers can then provide a command line flag to
>>> turn on a warning when the keyword is missing in the declaration.
>>>
>>>     Daniel.
>>>
>>
>> Just static? What about all the other stuff that we currently only put o=
n
>> the declaration (e.g. explicit, virtual, override) ?
>>
>> Barry
>>
>> --
>> You received this message because you are subscribed to the Google Group=
s
>> "ISO C++ Standard - Future Proposals" group.
>> To unsubscribe from this group and stop receiving emails from it, send a=
n
>> 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/cb509111-eddd-4698-
>> 9de0-ebbe7e5c13ff%40isocpp.org
>> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/cb509111-e=
ddd-4698-9de0-ebbe7e5c13ff%40isocpp.org?utm_medium=3Demail&utm_source=3Dfoo=
ter>
>> .
>>
> --
> 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/CAC%2B0CCNqXpdhHFAnaCDQk2%3DT8%
> 2BiUuF1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCNq=
XpdhHFAnaCDQk2%3DT8%2BiUuF1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com?utm_med=
ium=3Demail&utm_source=3Dfooter>
> .
>



--=20
Who=E2=80=99s got the sweetest disposition?
One guess, that=E2=80=99s who?
Who=E2=80=99d never, ever start an argument?
Who never shows a bit of temperament?
Who's never wrong but always right?
Who'd never dream of starting a fight?
Who get stuck with all the bad luck?

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-03JP47z5x%3DHg1U6E4RZCFcF1JhFYwrz52PvpDBd=
H%3D%2BEA%40mail.gmail.com.

--000000000000c8038c056f7df991
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jun 25, 2018 at 6:09 PM, Jake Arkinstall <span dir=3D"ltr">&lt;=
<a href=3D"mailto:jake.arkinstall@gmail.com" target=3D"_blank">jake.arkinst=
all@gmail.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" st=
yle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div =
dir=3D"auto"><div>To be honest, I often find myself writing it in the decla=
rations by nature - I subconsciously expect it to belong there. For some pr=
ojects I leave it in as a comment, when it&#39;s appropriate to be crystal =
clear.</div><div dir=3D"auto"><br></div><div dir=3D"auto">I wouldn&#39;t mi=
nd it being there - though there&#39;s no purpose to it.</div><div dir=3D"a=
uto"><br></div><div dir=3D"auto">It doesn&#39;t add a new context for the w=
ord &quot;static&quot; for the user, but it&#39;s a different story in the =
internals. It can&#39;t be a keyword that is just passively ignored, becaus=
e it should error if the method isn&#39;t static - so it does seem like the=
re will be some work involved that doesn&#39;t quite justify the outcome un=
less there&#39;s some more motivation. I can&#39;t think of any that don&#3=
9;t sound horrible - allowing static and non-static versions of the same na=
me, for example...=C2=A0 there be dragons.=C2=A0</div></div></blockquote><d=
iv><br></div><div>That should clearly be ill-formed.</div><div>The rule sho=
uld be:</div><div>&#39;static&#39; in out-class definition =3D&gt; &#39;sta=
tic&#39; in declaration</div><div><br></div><div>(in the form P =3D&gt; Q ,=
 !Q =3D&gt; !P)</div><div>=C2=A0</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"auto"><div><div class=3D"h5"><div dir=3D"auto"><br></div><div dir=3D"=
auto"><br></div><div dir=3D"auto"><div class=3D"gmail_quote" dir=3D"auto"><=
div dir=3D"ltr">On Mon, 25 Jun 2018, 21:51 Barry Revzin, &lt;<a href=3D"mai=
lto:barry.revzin@gmail.com" rel=3D"noreferrer noreferrer" target=3D"_blank"=
>barry.revzin@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:1=
ex"><div dir=3D"ltr"><br><br>On Monday, June 25, 2018 at 3:24:13 PM UTC-5, =
Daniel Gutson wrote:<blockquote class=3D"gmail_quote" style=3D"margin:0;mar=
gin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr=
">I know this sort of changes might have lost the train, but this one may b=
e worth to discuss.<div><br></div><div>When reading a definition of the met=
hod, we can tell its CV-qualification.</div><div>However, when it is not CV=
-qualified, we cannot tell whether it is static or not, leading us to go an=
d look for the declaration.</div><div>I propose to allow (optionally) the &=
#39;static&#39; keyword to the declarations of static methods:</div><div><b=
r></div><div>static void Class::method()</div><div>{</div><div>}</div><div>=
<br></div><div>Note that this is mostly practical enhancement (and AFAIK no=
n breaking, backward compatible one) targeting ease of maintainability.</di=
v><div><br></div><div>Having this feature, compilers can then provide a com=
mand line flag to turn on a warning when the keyword is missing in the decl=
aration.</div><div><br></div><div>=C2=A0 =C2=A0 Daniel.</div></div></blockq=
uote><div><br></div><div>Just static? What about all the other stuff that w=
e currently only put on the declaration (e.g. explicit, virtual, override) =
?</div><div><br></div><div>Barry</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" rel=3D"nore=
ferrer noreferrer noreferrer" target=3D"_blank">std-proposals+unsubscribe@<=
wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" rel=3D"noreferrer noreferrer noreferrer" target=3D"_blank">std-propos=
als@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/cb509111-eddd-4698-9de0-ebbe7e5c13ff%=
40isocpp.org?utm_medium=3Demail&amp;utm_source=3Dfooter" rel=3D"noreferrer =
noreferrer noreferrer" target=3D"_blank">https://groups.google.com/a/<wbr>i=
socpp.org/d/msgid/std-<wbr>proposals/cb509111-eddd-4698-<wbr>9de0-ebbe7e5c1=
3ff%40isocpp.org</a><wbr>.<br>
</blockquote></div></div></div></div></div><div><div class=3D"h5">

<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@<wbr>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></div></div>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCNqXpdhHFAnaCDQk2%3DT8%2BiUuF=
1%2BEPXHGaRQ1%2BLhOJ_2Ww%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=
=3Dfooter" target=3D"_blank">https://groups.google.com/a/<wbr>isocpp.org/d/=
msgid/std-<wbr>proposals/CAC%<wbr>2B0CCNqXpdhHFAnaCDQk2%3DT8%<wbr>2BiUuF1%2=
BEPXHGaRQ1%2BLhOJ_<wbr>2Ww%40mail.gmail.com</a>.<br>
</blockquote></div><br><br clear=3D"all"><div><br></div>-- <br><div class=
=3D"gmail_signature" data-smartmail=3D"gmail_signature">Who=E2=80=99s got t=
he sweetest disposition?<br>One guess, that=E2=80=99s who?<br>Who=E2=80=99d=
 never, ever start an argument?<br>Who never shows a bit of temperament?<br=
>Who&#39;s never wrong but always right?<br>Who&#39;d never dream of starti=
ng a fight?<br>Who get stuck with all the bad luck? </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/CAFdMc-03JP47z5x%3DHg1U6E4RZCFcF1JhFY=
wrz52PvpDBdH%3D%2BEA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-03JP=
47z5x%3DHg1U6E4RZCFcF1JhFYwrz52PvpDBdH%3D%2BEA%40mail.gmail.com</a>.<br />

--000000000000c8038c056f7df991--

.


Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Tue, 26 Jun 2018 07:24:22 +0200
Raw View
This is a multi-part message in MIME format.
--------------00882907B7E2432E325C321C
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: quoted-printable

Le 25/06/2018 =C3=A0 22:51, Barry Revzin a =C3=A9crit=C2=A0:
>
>
> On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson wrote:
>
>     I know this sort of changes might have lost the train, but this
>     one may be worth to discuss.
>
>     When reading a definition of the method, we can tell its
>     CV-qualification.
>     However, when it is not CV-qualified, we cannot tell whether it is
>     static or not, leading us to go and look for the declaration.
>     I propose to allow (optionally) the 'static' keyword to the
>     declarations of static methods:
>
>     static void Class::method()
>     {
>     }
>
>     Note that this is mostly practical enhancement (and AFAIK non
>     breaking, backward compatible one) targeting ease of maintainability.
>
>     Having this feature, compilers can then provide a command line
>     flag to turn on a warning when the keyword is missing in the
>     declaration.
>
>     =C2=A0 =C2=A0 Daniel.
>
>
In order to understand the legacy code, don't you need as well to know=20
the accessibility?
If you apply it to functions, shouldn't you apply it to data as well?
> Just static? What about all the other stuff that we currently only put=20
> on the declaration (e.g. explicit, virtual, override) ?

BTW, can we use the new explicit(bool) feature in the definition of a=20
function?

Vicente

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/ab765318-cd35-9fec-21b0-7657d2cdf8fe%40wanadoo.f=
r.

--------------00882907B7E2432E325C321C
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf-8=
">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div class=3D"moz-cite-prefix">Le 25/06/2018 =C3=A0 22:51, Barry Revzin=
 a
      =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite"
      cite=3D"mid:cb509111-eddd-4698-9de0-ebbe7e5c13ff@isocpp.org">
      <div dir=3D"ltr"><br>
        <br>
        On Monday, June 25, 2018 at 3:24:13 PM UTC-5, Daniel Gutson
        wrote:
        <blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left:
          0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">
          <div dir=3D"ltr">I know this sort of changes might have lost the
            train, but this one may be worth to discuss.
            <div><br>
            </div>
            <div>When reading a definition of the method, we can tell
              its CV-qualification.</div>
            <div>However, when it is not CV-qualified, we cannot tell
              whether it is static or not, leading us to go and look for
              the declaration.</div>
            <div>I propose to allow (optionally) the 'static' keyword to
              the declarations of static methods:</div>
            <div><br>
            </div>
            <div>static void Class::method()</div>
            <div>{</div>
            <div>}</div>
            <div><br>
            </div>
            <div>Note that this is mostly practical enhancement (and
              AFAIK non breaking, backward compatible one) targeting
              ease of maintainability.</div>
            <div><br>
            </div>
            <div>Having this feature, compilers can then provide a
              command line flag to turn on a warning when the keyword is
              missing in the declaration.</div>
            <div><br>
            </div>
            <div>=C2=A0 =C2=A0 Daniel.</div>
          </div>
        </blockquote>
        <div><br>
        </div>
      </div>
    </blockquote>
    In order to understand the legacy code, don't you need as well to
    know the accessibility?<br>
    If you apply it to functions, shouldn't you apply it to data as
    well?<br>
    <blockquote type=3D"cite"
      cite=3D"mid:cb509111-eddd-4698-9de0-ebbe7e5c13ff@isocpp.org">
      <div dir=3D"ltr">
        <div>Just static? What about all the other stuff that we
          currently only put on the declaration (e.g. explicit, virtual,
          override) ?</div>
      </div>
    </blockquote>
    <br>
    BTW, can we use the new explicit(bool) feature in the definition of
    a function?<br>
    <br>
    Vicente <br>
  </body>
</html>

<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/ab765318-cd35-9fec-21b0-7657d2cdf8fe%=
40wanadoo.fr?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/ab765318-cd35-9fec-21b0-7657d2cdf8fe=
%40wanadoo.fr</a>.<br />

--------------00882907B7E2432E325C321C--

.


Author: Barry Revzin <barry.revzin@gmail.com>
Date: Tue, 26 Jun 2018 06:31:26 -0700 (PDT)
Raw View
------=_Part_24853_1957512711.1530019886186
Content-Type: multipart/alternative;
 boundary="----=_Part_24854_867104134.1530019886186"

------=_Part_24854_867104134.1530019886186
Content-Type: text/plain; charset="UTF-8"


>
> BTW, can we use the new explicit(bool) feature in the definition of a
> function?
>
> Vicente
>

Same as normal explicit: function declaration
only: http://eel.is/c++draft/dcl.fct.spec

--
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/a99af7f5-b455-4384-bbc2-e1787aabd688%40isocpp.org.

------=_Part_24854_867104134.1530019886186
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><blockquote class=3D"gmail_quote" style=3D"margin: 0;margi=
n-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div text=3D"=
#000000" bgcolor=3D"#FFFFFF">BTW, can we use the new explicit(bool) feature=
 in the definition of
    a function?<br>
    <br>
    Vicente <br></div></blockquote><div><br></div><div>Same as normal expli=
cit: function declaration only:=C2=A0http://eel.is/c++draft/dcl.fct.spec</d=
iv></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/a99af7f5-b455-4384-bbc2-e1787aabd688%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/a99af7f5-b455-4384-bbc2-e1787aabd688=
%40isocpp.org</a>.<br />

------=_Part_24854_867104134.1530019886186--

------=_Part_24853_1957512711.1530019886186--

.


Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Tue, 26 Jun 2018 23:13:33 +0200
Raw View
This is a multi-part message in MIME format.
--------------21BBE348272257011E28B0AE
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: quoted-printable

Le 26/06/2018 =C3=A0 15:31, Barry Revzin a =C3=A9crit=C2=A0:
>
>     BTW, can we use the new explicit(bool) feature in the definition
>     of a function?
>
>     Vicente
>
>
> Same as normal explicit: function declaration=20
> only:=C2=A0http://eel.is/c++draft/dcl.fct.spec
This means that we cannot define a function using explict(bool)=20
separately, we must define it in the declaration.

We are missing something, isn't it?

Vicente

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/d02d9b9b-3fca-480a-cdd3-a3f9c96b73c1%40wanadoo.f=
r.

--------------21BBE348272257011E28B0AE
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf-8=
">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div class=3D"moz-cite-prefix">Le 26/06/2018 =C3=A0 15:31, Barry Revzin=
 a
      =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite"
      cite=3D"mid:a99af7f5-b455-4384-bbc2-e1787aabd688@isocpp.org">
      <div dir=3D"ltr">
        <blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left:
          0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">
          <div text=3D"#000000" bgcolor=3D"#FFFFFF">BTW, can we use the new
            explicit(bool) feature in the definition of a function?<br>
            <br>
            Vicente <br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div>Same as normal explicit: function declaration
          only:=C2=A0<a class=3D"moz-txt-link-freetext" href=3D"http://eel.=
is/c++draft/dcl.fct.spec">http://eel.is/c++draft/dcl.fct.spec</a></div>
      </div>
    </blockquote>
    This means that we cannot define a function using explict(bool)
    separately, we must define it in the declaration.<br>
    <br>
    We are missing something, isn't it?<br>
    <br>
    Vicente<br>
    <br>
  </body>
</html>

<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/d02d9b9b-3fca-480a-cdd3-a3f9c96b73c1%=
40wanadoo.fr?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/d02d9b9b-3fca-480a-cdd3-a3f9c96b73c1=
%40wanadoo.fr</a>.<br />

--------------21BBE348272257011E28B0AE--

.


Author: florian.csdt@gmail.com
Date: Tue, 26 Jun 2018 14:50:26 -0700 (PDT)
Raw View
------=_Part_5678_2059672538.1530049826991
Content-Type: multipart/alternative;
 boundary="----=_Part_5679_726752556.1530049826991"

------=_Part_5679_726752556.1530049826991
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable



Le mardi 26 juin 2018 23:13:36 UTC+2, Vicente J. Botet Escriba a =C3=A9crit=
 :
>
> Le 26/06/2018 =C3=A0 15:31, Barry Revzin a =C3=A9crit :
>
> BTW, can we use the new explicit(bool) feature in the definition of a=20
>> function?
>>
>> Vicente=20
>>
>
> Same as normal explicit: function declaration only:=20
> http://eel.is/c++draft/dcl.fct.spec
>
> This means that we cannot define a function using explict(bool)=20
> separately, we must define it in the declaration.
>
> We are missing something, isn't it?
>
> Vicente
>
> You can define a function with explicit (or explicit(bool)) separately.
This works exactly like static. It changes the behaviour of the method, but=
=20
appears only at its declaration.

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/6ab8c24e-7ffa-4187-a766-93c3b2d44012%40isocpp.or=
g.

------=_Part_5679_726752556.1530049826991
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><br>Le mardi 26 juin 2018 23:13:36 UTC+2, Vicente J. B=
otet Escriba a =C3=A9crit=C2=A0:<blockquote class=3D"gmail_quote" style=3D"=
margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;=
">
 =20
   =20
 =20
  <div text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div>Le 26/06/2018 =C3=A0 15:31, Barry Revzin a
      =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite">
      <div dir=3D"ltr">
        <blockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.8=
ex;border-left:1px #ccc solid;padding-left:1ex">
          <div text=3D"#000000" bgcolor=3D"#FFFFFF">BTW, can we use the new
            explicit(bool) feature in the definition of a function?<br>
            <br>
            Vicente <br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div>Same as normal explicit: function declaration
          only:=C2=A0<a href=3D"http://eel.is/c++draft/dcl.fct.spec" target=
=3D"_blank" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;http://www.goo=
gle.com/url?q\x3dhttp%3A%2F%2Feel.is%2Fc%2B%2Bdraft%2Fdcl.fct.spec\x26sa\x3=
dD\x26sntz\x3d1\x26usg\x3dAFQjCNH5iDOzb76HvnyCsIgICqEXM3_52g&#39;;return tr=
ue;" onclick=3D"this.href=3D&#39;http://www.google.com/url?q\x3dhttp%3A%2F%=
2Feel.is%2Fc%2B%2Bdraft%2Fdcl.fct.spec\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAF=
QjCNH5iDOzb76HvnyCsIgICqEXM3_52g&#39;;return true;">http://eel.is/c++draft/=
<wbr>dcl.fct.spec</a></div>
      </div>
    </blockquote>
    This means that we cannot define a function using explict(bool)
    separately, we must define it in the declaration.<br>
    <br>
    We are missing something, isn&#39;t it?<br>
    <br>
    Vicente<br>
    <br></div></blockquote><div>You can define a function with explicit (or=
 explicit(bool)) separately.</div><div>This works exactly like static. It c=
hanges the behaviour of the method, but appears only at its declaration.<br=
></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/6ab8c24e-7ffa-4187-a766-93c3b2d44012%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/6ab8c24e-7ffa-4187-a766-93c3b2d44012=
%40isocpp.org</a>.<br />

------=_Part_5679_726752556.1530049826991--

------=_Part_5678_2059672538.1530049826991--

.


Author: Daniel Gutson <danielgutson@gmail.com>
Date: Tue, 26 Jun 2018 23:36:44 -0300
Raw View
--0000000000000a1498056f967dca
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Any co-authors to write the proposal?

El mar., 26 de junio de 2018 18:50, <florian.csdt@gmail.com> escribi=C3=B3:

>
>
> Le mardi 26 juin 2018 23:13:36 UTC+2, Vicente J. Botet Escriba a =C3=A9cr=
it :
>>
>> Le 26/06/2018 =C3=A0 15:31, Barry Revzin a =C3=A9crit :
>>
>> BTW, can we use the new explicit(bool) feature in the definition of a
>>> function?
>>>
>>> Vicente
>>>
>>
>> Same as normal explicit: function declaration only:
>> http://eel.is/c++draft/dcl.fct.spec
>>
>> This means that we cannot define a function using explict(bool)
>> separately, we must define it in the declaration.
>>
>> We are missing something, isn't it?
>>
>> Vicente
>>
>> You can define a function with explicit (or explicit(bool)) separately.
> This works exactly like static. It changes the behaviour of the method,
> but appears only at its declaration.
>
> --
> 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/6ab8c24e-7ff=
a-4187-a766-93c3b2d44012%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/6ab8c24e-7f=
fa-4187-a766-93c3b2d44012%40isocpp.org?utm_medium=3Demail&utm_source=3Dfoot=
er>
> .
>

--=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.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-1%2BKnOORHXFG4fLJHGr6QtLBCrpBP5Pu4rOEW5h1=
_TwVA%40mail.gmail.com.

--0000000000000a1498056f967dca
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Any co-authors to write the proposal?</div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr">El mar., 26 de junio de 2018 18:50,  &lt;=
<a href=3D"mailto:florian.csdt@gmail.com">florian.csdt@gmail.com</a>&gt; es=
cribi=C3=B3:<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"><br><=
br>Le mardi 26 juin 2018 23:13:36 UTC+2, Vicente J. Botet Escriba a =C3=A9c=
rit=C2=A0:<blockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0=
..8ex;border-left:1px #ccc solid;padding-left:1ex">
 =20
   =20
 =20
  <div text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div>Le 26/06/2018 =C3=A0 15:31, Barry Revzin a
      =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite">
      <div dir=3D"ltr">
        <blockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.8=
ex;border-left:1px #ccc solid;padding-left:1ex">
          <div text=3D"#000000" bgcolor=3D"#FFFFFF">BTW, can we use the new
            explicit(bool) feature in the definition of a function?<br>
            <br>
            Vicente <br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div>Same as normal explicit: function declaration
          only:=C2=A0<a href=3D"http://eel.is/c++draft/dcl.fct.spec" rel=3D=
"nofollow noreferrer" target=3D"_blank">http://eel.is/c++draft/dcl.fct.spec=
</a></div>
      </div>
    </blockquote>
    This means that we cannot define a function using explict(bool)
    separately, we must define it in the declaration.<br>
    <br>
    We are missing something, isn&#39;t it?<br>
    <br>
    Vicente<br>
    <br></div></blockquote><div>You can define a function with explicit (or=
 explicit(bool)) separately.</div><div>This works exactly like static. It c=
hanges the behaviour of the method, but appears only at its declaration.<br=
></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" rel=3D"noreferrer">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" rel=3D"noreferrer">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/6ab8c24e-7ffa-4187-a766-93c3b2d44012%=
40isocpp.org?utm_medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank" =
rel=3D"noreferrer">https://groups.google.com/a/isocpp.org/d/msgid/std-propo=
sals/6ab8c24e-7ffa-4187-a766-93c3b2d44012%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">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/CAFdMc-1%2BKnOORHXFG4fLJHGr6QtLBCrpBP=
5Pu4rOEW5h1_TwVA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-1%2BKnOO=
RHXFG4fLJHGr6QtLBCrpBP5Pu4rOEW5h1_TwVA%40mail.gmail.com</a>.<br />

--0000000000000a1498056f967dca--

.