23 lines
324 B
Rust
23 lines
324 B
Rust
|
// check-pass
|
||
|
|
||
|
#![feature(type_alias_impl_trait)]
|
||
|
|
||
|
struct Send<T> {
|
||
|
i: InnerSend<T>,
|
||
|
}
|
||
|
|
||
|
type InnerSend<T> = impl Sized;
|
||
|
|
||
|
fn constrain<T>() -> InnerSend<T> {
|
||
|
()
|
||
|
}
|
||
|
|
||
|
trait SendMustNotImplDrop {}
|
||
|
|
||
|
#[allow(drop_bounds)]
|
||
|
impl<T: Drop> SendMustNotImplDrop for T {}
|
||
|
|
||
|
impl<T> SendMustNotImplDrop for Send<T> {}
|
||
|
|
||
|
fn main() {}
|