32 lines
430 B
Rust
32 lines
430 B
Rust
//@ compile-flags: -Znext-solver
|
|
//@ check-pass
|
|
|
|
struct A(*mut ());
|
|
|
|
unsafe impl Send for A where A: 'static {}
|
|
|
|
macro_rules! mk {
|
|
($name:ident $ty:ty) => {
|
|
struct $name($ty, $ty, $ty, $ty, $ty, $ty, $ty, $ty, $ty, $ty);
|
|
};
|
|
}
|
|
|
|
mk!(B A);
|
|
mk!(C B);
|
|
mk!(D C);
|
|
mk!(E D);
|
|
mk!(F E);
|
|
mk!(G F);
|
|
mk!(H G);
|
|
mk!(I H);
|
|
mk!(J I);
|
|
mk!(K J);
|
|
mk!(L K);
|
|
mk!(M L);
|
|
|
|
fn needs_send<T: Send>() {}
|
|
|
|
fn main() {
|
|
needs_send::<M>();
|
|
}
|