1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// PR c++/48451 // { dg-do compile { target c++11 } } namespace std { template <class T> T&& declval(); } template<class T, class... Args, class = decltype(T(std::declval<Args>()...)) > char f(int); struct From2Ints { From2Ints(int, int); }; static_assert(sizeof(f<From2Ints, int, int>(0)) == 1, "Error"); // b