为什么`is_constructible<function<int(int)>, int(*)(int,int)>::value`在VC2015RC下为真

Why `is_constructible<function<int(int)>, int(*)(int,int)>::value` is true under VC2015RC

#include <functional>
using namespace std;

int main()
{
   static_assert(is_constructible<function<int(int)>, int(*)(int,int)>::value, "error");
}

代码未使用 GCC 和 Clang 编译,但使用 Visual C++ 2015 RC 通过。

这是符合标准的行为还是只是一个错误?

std::function 的构造函数曾经接受阳光下的一切(它是 template<class F> function(F f))。

然后它在标准中受到限制(LWG issue 2132), but implementing that constraint requires expression SFINAE, which Microsoft's compiler doesn't yet support