blob: f5f3228f81707b6b2589b7ec16b7dd7e652756e2 [file] [log] [blame]
// PR c++/40595
// { dg-do compile { target c++11 } }
template<int N>
struct S
{
typedef int type;
};
template<typename T>
struct Get
{
static T get();
};
template<typename F>
struct B
{
template<typename ... Args>
typename S<sizeof( Get<F>::get() (Get<Args>::get() ...) )>::type
f(Args&& ... a);
};
struct X
{
bool operator()(int) const;
};
int main()
{
B<X> b;
b.f(1);
}