Impl DispatchFromDyn for Cell?

Er yes, Cell<SmartPtr<Self>> is what I meant. (Gc<T> is essentially Cell<NonNull<GcBox<T>>>, where GcBox<T> is a struct with T and some header information. It actually uses a bit of the pointer as a bit to indicate whether the Gc is rooted, so there isn’t an alignment guarantee. But we know that the vtable is valid because at some point the Gc originated from a Gc::new call.)