rust/src/test/ui/fmt/send-sync.stderr

44 lines
2.4 KiB
Plaintext
Raw Normal View History

error[E0277]: the trait bound `*mut std::ops::Fn() + 'static: std::marker::Sync` is not satisfied in `[std::fmt::ArgumentV1<'_>]`
--> $DIR/send-sync.rs:18:5
|
2018-02-22 18:42:32 -06:00
LL | send(format_args!("{:?}", c)); //~ ERROR Sync` is not satisfied
| ^^^^ `*mut std::ops::Fn() + 'static` cannot be shared between threads safely
|
= help: within `[std::fmt::ArgumentV1<'_>]`, the trait `std::marker::Sync` is not implemented for `*mut std::ops::Fn() + 'static`
= note: required because it appears within the type `std::marker::PhantomData<*mut std::ops::Fn() + 'static>`
= note: required because it appears within the type `core::fmt::Void`
= note: required because it appears within the type `&core::fmt::Void`
= note: required because it appears within the type `std::fmt::ArgumentV1<'_>`
= note: required because it appears within the type `[std::fmt::ArgumentV1<'_>]`
= note: required because of the requirements on the impl of `std::marker::Send` for `&[std::fmt::ArgumentV1<'_>]`
= note: required because it appears within the type `std::fmt::Arguments<'_>`
note: required by `send`
--> $DIR/send-sync.rs:11:1
|
2018-02-22 18:42:32 -06:00
LL | fn send<T: Send>(_: T) {}
| ^^^^^^^^^^^^^^^^^^^^^^
error[E0277]: the trait bound `*mut std::ops::Fn() + 'static: std::marker::Sync` is not satisfied in `std::fmt::Arguments<'_>`
--> $DIR/send-sync.rs:19:5
|
2018-02-22 18:42:32 -06:00
LL | sync(format_args!("{:?}", c)); //~ ERROR Sync` is not satisfied
| ^^^^ `*mut std::ops::Fn() + 'static` cannot be shared between threads safely
|
= help: within `std::fmt::Arguments<'_>`, the trait `std::marker::Sync` is not implemented for `*mut std::ops::Fn() + 'static`
= note: required because it appears within the type `std::marker::PhantomData<*mut std::ops::Fn() + 'static>`
= note: required because it appears within the type `core::fmt::Void`
= note: required because it appears within the type `&core::fmt::Void`
= note: required because it appears within the type `std::fmt::ArgumentV1<'_>`
= note: required because it appears within the type `[std::fmt::ArgumentV1<'_>]`
= note: required because it appears within the type `&[std::fmt::ArgumentV1<'_>]`
= note: required because it appears within the type `std::fmt::Arguments<'_>`
note: required by `sync`
--> $DIR/send-sync.rs:12:1
|
2018-02-22 18:42:32 -06:00
LL | fn sync<T: Sync>(_: T) {}
| ^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 2 previous errors
2018-02-19 14:40:25 -06:00
If you want more information on this error, try using "rustc --explain E0277"