error[E0277]: `&'a (dyn Dummy + 'a)` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:9:26 | LL | assert_send_static::<&'a dyn Dummy>(); | ^^^^^^^^^^^^^ `&'a (dyn Dummy + 'a)` cannot be sent between threads safely | = help: the trait `Sync` is not implemented for `(dyn Dummy + 'a)` = note: required for `&'a (dyn Dummy + 'a)` to implement `Send` note: required by a bound in `assert_send_static` --> $DIR/send-trait-objects-basic.rs:3:26 | LL | fn assert_send_static() {} | ^^^^ required by this bound in `assert_send_static` error[E0277]: `(dyn Dummy + 'a)` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:19:26 | LL | assert_send_static::>(); | ^^^^^^^^^^^^^^^^^^^ `(dyn Dummy + 'a)` cannot be sent between threads safely | = help: the trait `Send` is not implemented for `(dyn Dummy + 'a)` = note: required for `std::ptr::Unique<(dyn Dummy + 'a)>` to implement `Send` note: required because it appears within the type `Box<(dyn Dummy + 'a)>` --> $SRC_DIR/alloc/src/boxed.rs:LL:COL note: required by a bound in `assert_send_static` --> $DIR/send-trait-objects-basic.rs:3:26 | LL | fn assert_send_static() {} | ^^^^ required by this bound in `assert_send_static` error[E0277]: `*mut &'a isize` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:24:19 | LL | assert_send::<*mut &'a isize>(); | ^^^^^^^^^^^^^^ `*mut &'a isize` cannot be sent between threads safely | = help: the trait `Send` is not implemented for `*mut &'a isize` note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error[E0277]: `&'static (dyn Dummy + 'static)` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:32:19 | LL | assert_send::<&'static dyn Dummy>(); | ^^^^^^^^^^^^^^^^^^ `&'static (dyn Dummy + 'static)` cannot be sent between threads safely | = help: the trait `Sync` is not implemented for `(dyn Dummy + 'static)` = note: required for `&'static (dyn Dummy + 'static)` to implement `Send` note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error[E0277]: `dyn Dummy` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:34:19 | LL | assert_send::>(); | ^^^^^^^^^^^^^^ `dyn Dummy` cannot be sent between threads safely | = help: the trait `Send` is not implemented for `dyn Dummy` = note: required for `std::ptr::Unique` to implement `Send` note: required because it appears within the type `Box` --> $SRC_DIR/alloc/src/boxed.rs:LL:COL note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error[E0277]: `*mut u8` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:45:19 | LL | assert_send::>(); | ^^^^^^^^^^^^ `*mut u8` cannot be sent between threads safely | = help: the trait `Send` is not implemented for `*mut u8` = note: required for `std::ptr::Unique<*mut u8>` to implement `Send` note: required because it appears within the type `Box<*mut u8>` --> $SRC_DIR/alloc/src/boxed.rs:LL:COL note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error[E0277]: `*mut isize` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:48:19 | LL | assert_send::<*mut isize>(); | ^^^^^^^^^^ `*mut isize` cannot be sent between threads safely | = help: the trait `Send` is not implemented for `*mut isize` note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error[E0277]: `&'static (dyn Dummy + 'static)` cannot be sent between threads safely --> $DIR/send-trait-objects-basic.rs:53:19 | LL | assert_send::<&'static (dyn Dummy + 'static)>(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&'static (dyn Dummy + 'static)` cannot be sent between threads safely | = help: the trait `Sync` is not implemented for `(dyn Dummy + 'static)` = note: required for `&'static (dyn Dummy + 'static)` to implement `Send` note: required by a bound in `assert_send` --> $DIR/send-trait-objects-basic.rs:4:19 | LL | fn assert_send() {} | ^^^^ required by this bound in `assert_send` error: lifetime may not live long enough --> $DIR/send-trait-objects-basic.rs:14:5 | LL | fn test2<'a>() { | -- lifetime `'a` defined here LL | assert_send_static::<&'a (dyn Dummy + Sync)>(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ requires that `'a` must outlive `'static` error: aborting due to 9 previous errors For more information about this error, try `rustc --explain E0277`.