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(); }

Reply via email to