http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48521

           Summary: [4.5/4.6/4.7 Regression] [C++0x] std::result_of
                    doesn't work with pointer to member
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: r...@gcc.gnu.org


This is supposed to work, and did with 4.4:

#include <functional>
struct X
{
  int foo();
};

typedef int (X::*pm)();
std::result_of<pm()>::type i = 0;

This means we don't accept std::async(X::foo, ...) which is defined in terms of
result_of

I think I intentionally removed support for pointers to members from result_of,
because an earlier C++0x draft said it shouldn't work

Reply via email to