Topic: Comment on proposed C++14 Standard (N3690, N3691).
Author: Mikhail Semenov <mikhailsemenov1957@gmail.com>
Date: Sun, 7 Jul 2013 03:38:16 -0700 (PDT)
Raw View
------=_Part_8428_3433025.1373193496860
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Section 5.1.2, paragraph 3 reads:
The type of the lambda-expression (which is also the type of the closure=20
object) is a unique, unnamed non-union
class type =97 called the closure type =97 whose properties are described=
=20
below. This class type is not
an aggregate (8.5.1). *The closure type is declared in the smallest block=
=20
scope, class scope, or namespace
scope that contains the corresponding lambda-expression.*
Surely, a closure should be defined on the top level as most classes, in=20
order to allow it to be safely returned from the function block,
so that the function return type is properly defined. Otherwise, if it's=20
class is only defined in the corresponding function block, what will be the=
=20
return
type of the function?
=20
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposa=
ls/.
------=_Part_8428_3433025.1373193496860
Content-Type: text/html; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
<p>Section 5.1.2, paragraph 3 reads:</p><p><font color=3D"#0000ff" face=3D"=
georgia,serif">The type of the lambda-expression (which is also the type of=
the closure object) is a unique, unnamed non-union<br>class type =97 calle=
d the closure type =97 whose properties are described below. This class typ=
e is not<br>an aggregate (8.5.1). </font><strong><font color=3D"#0000ff" fa=
ce=3D"georgia,serif">The closure type is declared in the smallest block sco=
pe, class scope, or namespace<br>scope that contains the corresponding lamb=
da-expression.</font></strong></p><div>Surely, a closure should be defined =
on the top level as most classes, in order to allow it to be safely returne=
d from the function block,<br>so that the function return type is properly =
defined. Otherwise, if it's class is only defined in the corresponding=
function block, what will be the return</div><div>type of the functio=
n?</div><div> </div>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<br />
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br />
<br />
<br />
------=_Part_8428_3433025.1373193496860--
.