use forward_traits::{forwardable, forward_receiver, forward_traits}; #[forwardable] trait Foo where T: ?Sized { } struct A (); impl Foo for A { } #[forward_receiver] struct B (A); forward_traits! (for B . 0 impl for Foo ); fn main () { }