// { dg-do compile { target c++11 } } namespace std { template T&& declval(); } template class is_constructible_mini { typedef char __one; typedef struct { char __arr[2]; } __two; template static decltype(::new _Tp1(std::declval<_Args1>()...), __one()) __test(int); template static __two __test(...); public: static const bool value = sizeof(__test<_Tp, _Args...>(0)) == 1; }; static_assert( !is_constructible_mini::value, ""); static_assert( !is_constructible_mini::value, "");