1// { dg-do assemble } 2// { dg-options "" } 3// Origin: Mark Mitchell <mark@codesourcery.com> 4 5void X(); 6 7template <class T> 8struct J { 9 typedef T X; 10}; 11 12template <class T> 13struct S { 14 typedef T X; 15 16 struct I : public J<X> { 17 static X* f(); 18 }; 19}; 20 21S<int> si; 22