// PR c++/50157 // { dg-do compile { target c++11 } } template T val(); template())) > auto test(int) -> char; template auto test(...) -> char (&)[2]; struct P { explicit operator bool(); // (#13) }; typedef decltype(test(0)) type; // OK typedef decltype(test(0)) type2; // Error (#17)