https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119319
--- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> --- That is: ``` using US0 = vv < std::pair < n0::Xyzzy, typename n1::CL1 < n1::S0, 999 >::ps > >; class CL0 : public Error { private: US0 us0; public: CL0 (int err, const char *estr, const US0 & vec) : Error (err, estr), us0 (vec) { } }; class Xyzzy : public n1::CL2 < x0 > { }; ``` Xyzzy is used in CL0's us0 via the `std::vector<std::pair<Xyzzy,...>>`.