2 // { dg-do compile { target c++11 } }
4 template<typename X> struct junk {
5 template<typename Z> static Z y();
6 template<typename Y> static int test(...);
7 template<typename Y> static char test(decltype(y<Y>())*);
8 static int const value=sizeof(test<X>(0));
10 typedef char type[junk<int>::value==sizeof(char) ? 1 : -1];