error[E0277]: the trait bound `__T: serde::Serialize` is not satisfied --> tests/ui/missing-supertrait.rs:5:1 | 5 | serialize_trait_object!(MyTrait); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `__T`, so it does not implement `erased_serde::Serialize` | = note: required for `__T` to implement `erased_serde::Serialize` note: required by a bound in `require_erased_serialize_impl` --> src/private.rs | | pub fn require_erased_serialize_impl() | ----------------------------- required by a bound in this function | where | T: ?Sized + crate::Serialize, | ^^^^^^^^^^^^^^^^ required by this bound in `require_erased_serialize_impl` = note: this error originates in the macro `$crate::__internal_serialize_trait_object` which comes from the expansion of the macro `serialize_trait_object` (in Nightly builds, run with -Z macro-backtrace for more info) help: consider further restricting type parameter `__T` with trait `Serialize` | 5 | serialize_trait_object!(MyTrait + serde_core::ser::Serialize); | ++++++++++++++++++++++++++++