[Bug c++/86943] [7/8/9 Regression] Wrong code when converting stateless generic lambda to function pointer

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Nov 23 16:56:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86943

--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The non-normative note in [expr.prim.lambda.closure] p8 does seem to support
GCC's semantics. It suggests the returned function pointer is to an invoker
function not the operator() itself. The {} initializes the argument of the
invoker, which then forwards it to the operator() resulting in a move
construction.


More information about the Gcc-bugs mailing list