2 trait TraitWithSend: Send {}
3 trait IndirectTraitWithSend: TraitWithSend {}
5 // Check struct instantiation (Box<TraitWithSend> will only have Send if TraitWithSend has Send)
7 struct Blah { x: Box<dyn TraitWithSend> }
8 impl TraitWithSend for Blah {}
10 // Struct instantiation 2-levels deep
12 struct IndirectBlah { x: Box<dyn IndirectTraitWithSend> }
13 impl TraitWithSend for IndirectBlah {}
14 impl IndirectTraitWithSend for IndirectBlah {}
16 fn test_trait<T: Send + ?Sized>() { println!("got here!") }
19 test_trait::<dyn TraitWithSend>();
20 test_trait::<dyn IndirectTraitWithSend>();