// { dg-do assemble } | |
// Origin: Mark Mitchell <mark@codesourcery.com> | |
template <class X, class Y> | |
struct S{}; | |
template <class X> | |
struct S<int, X> { | |
template <class W> | |
struct I {}; | |
}; | |
template <class T> | |
void f() { | |
typename S<T, T>::template I<T> si; | |
} | |
template void f<int>(); |