// PR c++/103057 | |
// { dg-do compile { target c++11 } } | |
template <class T> struct A { }; | |
template <class T> struct B { using type = A<T>; }; | |
template <class T> struct C { | |
using type = typename T::foo; // { dg-error "int" } | |
}; | |
template <class T> using L = B<void>; | |
template <class T> | |
typename L<typename C<T>::type>::type | |
f(T) { }; | |
int main() | |
{ | |
f(42); // { dg-error "no match" } | |
} |