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