1// PR c++/39070
2// { dg-options "-std=c++0x" }
3
4template<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));
9};
10typedef char type[junk<int>::value==sizeof(char) ? 1 : -1];
11