diff options
Diffstat (limited to 'src/test/ui/suggestions/expected-boxed-future-isnt-pinned.stderr')
-rw-r--r-- | src/test/ui/suggestions/expected-boxed-future-isnt-pinned.stderr | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/src/test/ui/suggestions/expected-boxed-future-isnt-pinned.stderr b/src/test/ui/suggestions/expected-boxed-future-isnt-pinned.stderr deleted file mode 100644 index 34ff59a9b..000000000 --- a/src/test/ui/suggestions/expected-boxed-future-isnt-pinned.stderr +++ /dev/null @@ -1,106 +0,0 @@ -error[E0308]: mismatched types - --> $DIR/expected-boxed-future-isnt-pinned.rs:11:5 - | -LL | fn foo<F: Future<Output=i32> + Send + 'static>(x: F) -> BoxFuture<'static, i32> { - | - this type parameter ----------------------- expected `Pin<Box<(dyn Future<Output = i32> + Send + 'static)>>` because of return type -LL | // We could instead use an `async` block, but this way we have no std spans. -LL | x - | ^ expected struct `Pin`, found type parameter `F` - | - = note: expected struct `Pin<Box<(dyn Future<Output = i32> + Send + 'static)>>` - found type parameter `F` -help: you need to pin and box this expression - | -LL | Box::pin(x) - | +++++++++ + - -error[E0308]: mismatched types - --> $DIR/expected-boxed-future-isnt-pinned.rs:15:5 - | -LL | fn bar<F: Future<Output=i32> + Send + 'static>(x: F) -> BoxFuture<'static, i32> { - | ----------------------- expected `Pin<Box<(dyn Future<Output = i32> + Send + 'static)>>` because of return type -LL | Box::new(x) - | ^^^^^^^^^^^ expected struct `Pin`, found struct `Box` - | - = note: expected struct `Pin<Box<(dyn Future<Output = i32> + Send + 'static)>>` - found struct `Box<F>` - = help: use `Box::pin` - -error[E0308]: mismatched types - --> $DIR/expected-boxed-future-isnt-pinned.rs:19:14 - | -LL | fn baz<F: Future<Output=i32> + Send + 'static>(x: F) -> BoxFuture<'static, i32> { - | - this type parameter -LL | Pin::new(x) - | -------- ^ expected struct `Box`, found type parameter `F` - | | - | arguments to this function are incorrect - | help: use `Box::pin` to pin and box this expression: `Box::pin` - | - = note: expected struct `Box<dyn Future<Output = i32> + Send>` - found type parameter `F` -note: associated function defined here - --> $SRC_DIR/core/src/pin.rs:LL:COL - | -LL | pub const fn new(pointer: P) -> Pin<P> { - | ^^^ - -error[E0277]: `dyn Future<Output = i32> + Send` cannot be unpinned - --> $DIR/expected-boxed-future-isnt-pinned.rs:19:14 - | -LL | Pin::new(x) - | -------- ^ the trait `Unpin` is not implemented for `dyn Future<Output = i32> + Send` - | | - | required by a bound introduced by this call - | - = note: consider using `Box::pin` -note: required by a bound in `Pin::<P>::new` - --> $SRC_DIR/core/src/pin.rs:LL:COL - | -LL | impl<P: Deref<Target: Unpin>> Pin<P> { - | ^^^^^ required by this bound in `Pin::<P>::new` - -error[E0277]: `dyn Future<Output = i32> + Send` cannot be unpinned - --> $DIR/expected-boxed-future-isnt-pinned.rs:24:14 - | -LL | Pin::new(Box::new(x)) - | -------- ^^^^^^^^^^^ the trait `Unpin` is not implemented for `dyn Future<Output = i32> + Send` - | | - | required by a bound introduced by this call - | - = note: consider using `Box::pin` -note: required by a bound in `Pin::<P>::new` - --> $SRC_DIR/core/src/pin.rs:LL:COL - | -LL | impl<P: Deref<Target: Unpin>> Pin<P> { - | ^^^^^ required by this bound in `Pin::<P>::new` - -error[E0308]: mismatched types - --> $DIR/expected-boxed-future-isnt-pinned.rs:28:5 - | -LL | / async { -LL | | 42 -LL | | } - | | ^ - | | | - | |_____expected struct `Pin`, found `async` block - | arguments to this function are incorrect - | - = note: expected struct `Pin<Box<dyn Future<Output = i32> + Send>>` - found `async` block `[async block@$DIR/expected-boxed-future-isnt-pinned.rs:28:5: 30:6]` -note: function defined here - --> $SRC_DIR/core/src/future/mod.rs:LL:COL - | -LL | pub const fn identity_future<O, Fut: Future<Output = O>>(f: Fut) -> Fut { - | ^^^^^^^^^^^^^^^ -help: you need to pin and box this expression - | -LL ~ Box::pin(async { -LL | 42 -LL ~ }) - | - -error: aborting due to 6 previous errors - -Some errors have detailed explanations: E0277, E0308. -For more information about an error, try `rustc --explain E0277`. |