// { dg-do assemble  }
template <class T> 
struct S {
  enum E { a = (int) T::b };
};
struct S2 {
  enum E2 { b };
};
template class S<S2>;
// { dg-do assemble  }
template <class T> 
struct S {
  enum E { a = (int) T::b };
};
struct S2 {
  enum E2 { b };
};
template class S<S2>;