// { dg-do assemble  }
// Origin: Mark Mitchell <mitchell@codesourcery.com>
template <class T, class V>
struct S
{
};
template <class T>
struct S<T, int>
{
  template <class U>
  void f (U);
};
template <class T>
template <class U>
void S<T, int>::f (U)
{
}