| warning: the feature `return_type_notation` is incomplete and may not be safe to use and/or cause compiler crashes |
| --> $DIR/normalizing-self-auto-trait-issue-109924.rs:7:12 |
| | |
| LL | #![feature(return_type_notation)] |
| | ^^^^^^^^^^^^^^^^^^^^ |
| | |
| = note: see issue #109417 <https://github.com/rust-lang/rust/issues/109417> for more information |
| = note: `#[warn(incomplete_features)]` on by default |
| |
| error[E0277]: `impl Future<Output = ()> { <_ as Foo>::bar() }` cannot be sent between threads safely |
| --> $DIR/normalizing-self-auto-trait-issue-109924.rs:22:11 |
| | |
| LL | build(Bar); |
| | ----- ^^^ `impl Future<Output = ()> { <_ as Foo>::bar() }` cannot be sent between threads safely |
| | | |
| | required by a bound introduced by this call |
| | |
| = help: the trait `for<'a> Send` is not implemented for `impl Future<Output = ()> { <_ as Foo>::bar() }` |
| note: this is a known limitation of the trait solver that will be lifted in the future |
| --> $DIR/normalizing-self-auto-trait-issue-109924.rs:22:11 |
| | |
| LL | build(Bar); |
| | ------^^^- |
| | | | |
| | | the trait solver is unable to infer the generic types that should be inferred from this argument |
| | add turbofish arguments to this call to specify the types manually, even if it's redundant |
| note: required by a bound in `build` |
| --> $DIR/normalizing-self-auto-trait-issue-109924.rs:19:39 |
| | |
| LL | fn build<T>(_: T) where T: Foo<bar(): Send> {} |
| | ^^^^ required by this bound in `build` |
| |
| error: aborting due to previous error; 1 warning emitted |
| |
| For more information about this error, try `rustc --explain E0277`. |