// check-pass #![feature(type_alias_impl_trait)] struct Outer { i: InnerSend, } type InnerSend = impl Send; fn constrain() -> InnerSend { () } trait SendMustNotImplDrop {} #[allow(drop_bounds)] impl SendMustNotImplDrop for T {} impl SendMustNotImplDrop for Outer {} fn main() {}