1 // Only print template subst context when it isn't redundant.
2 // { dg-require-effective-target c++11 }
3 // { dg-prune-output "error" }
5 template<class T> struct A { typedef typename T::type type; };
7 template <class T, class U = typename A<T>::type>
10 template <class T, class U = typename T::type>
15 f(1); // { dg-message "required from here" }
16 g(1); // { dg-bogus "required from here" }