2 // { dg-require-effective-target c++11 }
3 // { dg-prune-output "not declared" }
4 // { dg-prune-output "expected" }
6 template <typename T, typename U>
12 template <typename T, typename U>
14 struct base<T, U>::derived : public base<T, V> {
17 // This (wrong?) alias declaration provokes the crash.
18 template <typename T, typename U, typename V>
19 using alias = base<T, U>::derived<V>; // { dg-error "template|typename" }
22 // template <typename T, typename U, typename V>
23 // using alias = typename base<T, U>::template derived<V>;
27 alias<T, bool, char> m{};