3 #![feature(type_alias_impl_trait)]
5 struct Outer<T: ?Sized> {
9 type InnerSend<T: ?Sized> = impl Send;
11 fn constrain<T: ?Sized>() -> InnerSend<T> {
15 trait SendMustNotImplDrop {}
18 impl<T: ?Sized + Send + Drop> SendMustNotImplDrop for T {}
20 impl<T: ?Sized> SendMustNotImplDrop for Outer<T> {}