```
help: consider restricting type parameter `T` with traits `Copy` and `Trait`
|
LL | fn duplicate_custom<T: Copy + Trait>(t: S<T>) -> (S<T>, S<T>) {
| ++++++++++++++
```
```
help: consider restricting type parameter `V` with trait `Copy`
|
LL | fn index<'a, K, V: std::marker::Copy>(map: &'a HashMap<K, V>, k: K) -> &'a V {
| +++++++++++++++++++
```
19 lines
706 B
Plaintext
19 lines
706 B
Plaintext
error: future cannot be sent between threads safely
|
|
--> $DIR/issue-70818.rs:4:38
|
|
|
|
|
LL | fn foo<T: Send, U>(ty: T, ty1: U) -> impl Future<Output = (T, U)> + Send {
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ future created by async block is not `Send`
|
|
|
|
|
note: captured value is not `Send`
|
|
--> $DIR/issue-70818.rs:6:18
|
|
|
|
|
LL | async { (ty, ty1) }
|
|
| ^^^ has type `U` which is not `Send`
|
|
help: consider restricting type parameter `U` with trait `Send`
|
|
|
|
|
LL | fn foo<T: Send, U: std::marker::Send>(ty: T, ty1: U) -> impl Future<Output = (T, U)> + Send {
|
|
| +++++++++++++++++++
|
|
|
|
error: aborting due to 1 previous error
|
|
|