template<typename, typename = int> struct A; template<typename T> struct B; template<typename, typename> struct A {}; template<typename T> struct B : A<T> {};