Created on 2009-02-12.00:00:00 last changed 189 months ago
[Voted into the WP at the July, 2009 meeting as part of N2927.]
Proposed resolution (July, 2009)
See document PL22.16/09-0117 = WG21 N2927.
According to 7.5.6 [expr.prim.lambda] paragraph 8, the “object type” of a captured function is the type to which the reference refers. That's clearly wrong when the captured reference is a reference to a function, because the resulting data member of the closure class will have a function type:
void f() { }
void g() {
void (&fr)() = f;
[fr]{}; // Oops...
}
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2010-03-29 00:00:00 | admin | set | status: wp -> cd2 |
| 2009-11-08 00:00:00 | admin | set | status: dr -> wp |
| 2009-08-03 00:00:00 | admin | set | messages: + msg2249 |
| 2009-08-03 00:00:00 | admin | set | status: review -> dr |
| 2009-03-23 00:00:00 | admin | set | messages: + msg1921 |
| 2009-02-12 00:00:00 | admin | create | |