http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56222
Bug #: 56222 Summary: Pointer to member in lambda should not require this to be captured Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: boris.big...@hotmail.com In the example below, gcc complains about this not being captures. This happens whenever a pointer to a member function is requested in a lambda. I tested with gcc-4.7.2. struct Test { void y() { } void x() { [](Test &t) { (t.*(&Test::y))(); }(*this); } }; int main() { Test().x(); }