|
// RUN: %clang_cc1 -std=c++17 -verify %s
|
|
// expected-no-diagnostics
|
|
|
|
template<typename T, typename U> struct X {
|
|
template<typename V> const V &as() { return V::error; }
|
|
template<> const U &as<U>() { return u; }
|
|
U u;
|
|
};
|
|
int f(X<int, int> x) {
|
|
return x.as<int>();
|
|
}
|