This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 116a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2024-12-19


1780. Explicit instantiation/specialization of generic lambda operator()

Section: 7.5.6.2  [expr.prim.lambda.closure]     Status: CD4     Submitter: Hubert Tong     Date: 2013-09-26

[Moved to DR at the November, 2014 meeting.]

Similarly to issue 1738, it is not clear whether it is permitted to explicitly instantiate or specialize the call operator of a polymorphic lambda (via decltype).

Proposed resolution (February, 2014):

Add the following as a new paragraph following 7.5.6 [expr.prim.lambda] paragraph 21:

The closure type associated with a lambda-expression has an implicitly-declared destructor (11.4.7 [class.dtor]).

A member of a closure type shall not be explicitly instantiated (13.9.2 [temp.inst]), explicitly specialized (13.9.3 [temp.explicit]), or named in a friend declaration (11.8.4 [class.friend]).