112a9d9c8Sopenharmony_citemplate <typename> class Rooted;
212a9d9c8Sopenharmony_cinamespace js {
312a9d9c8Sopenharmony_ci    template <typename T> class RootedBase {
412a9d9c8Sopenharmony_ci      T* foo;
512a9d9c8Sopenharmony_ci      Rooted<T>* next;
612a9d9c8Sopenharmony_ci    };
712a9d9c8Sopenharmony_ci}
812a9d9c8Sopenharmony_citemplate <typename T> class Rooted : js::RootedBase<T> {};
9