mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 15:54:15 +00:00
95ef76b8aa
This prevents differences in local environments, which may (for example) end up with a longer backtrace with more digits in the backtrace prefix, as happened to me. While we're at it, clean more of the output up, including the exact location of the error in the compiler.
59 lines
2.6 KiB
Plaintext
59 lines
2.6 KiB
Plaintext
error[E0277]: `[async fn body@$DIR/async.rs:23:29: 25:2]` is not a future
|
|
--> $DIR/async.rs:23:29
|
|
|
|
|
LL | async fn foo(x: u32) -> u32 {
|
|
| _____________________________-
|
|
LL | | x
|
|
LL | | }
|
|
| | ^
|
|
| | |
|
|
| |_`[async fn body@$DIR/async.rs:23:29: 25:2]` is not a future
|
|
| required by a bound introduced by this call
|
|
|
|
|
= help: the trait `Future` is not implemented for `[async fn body@$DIR/async.rs:23:29: 25:2]`
|
|
= note: [async fn body@$DIR/async.rs:23:29: 25:2] must be a future or must implement `IntoFuture` to be awaited
|
|
note: required by a bound in `identity_future`
|
|
--> $SRC_DIR/core/src/future/mod.rs:LL:COL
|
|
|
|
error[E0277]: the size for values of type `<[async fn body@$DIR/async.rs:23:29: 25:2] as Future>::Output` cannot be known at compilation time
|
|
--> $DIR/async.rs:23:29
|
|
|
|
|
LL | async fn foo(x: u32) -> u32 {
|
|
| _____________________________^
|
|
LL | | x
|
|
LL | | }
|
|
| |_^ doesn't have a size known at compile-time
|
|
|
|
|
= help: the trait `Sized` is not implemented for `<[async fn body@$DIR/async.rs:23:29: 25:2] as Future>::Output`
|
|
note: required by a bound in `identity_future`
|
|
--> $SRC_DIR/core/src/future/mod.rs:LL:COL
|
|
|
|
error[E0277]: `[async fn body@$DIR/async.rs:23:29: 25:2]` is not a future
|
|
--> $DIR/async.rs:23:25
|
|
|
|
|
LL | async fn foo(x: u32) -> u32 {
|
|
| ^^^ `[async fn body@$DIR/async.rs:23:29: 25:2]` is not a future
|
|
|
|
|
= help: the trait `Future` is not implemented for `[async fn body@$DIR/async.rs:23:29: 25:2]`
|
|
= note: [async fn body@$DIR/async.rs:23:29: 25:2] must be a future or must implement `IntoFuture` to be awaited
|
|
|
|
error: internal compiler error: projection clauses should be implied from elsewhere. obligation: `Obligation(predicate=Binder(ProjectionPredicate(AliasTy { substs: [[async fn body@$DIR/async.rs:23:29: 25:2]], def_id: ...), _use_mk_alias_ty_instead: () }, Term::Ty(u32)), []), depth=0)`
|
|
--> $DIR/async.rs:23:25
|
|
|
|
|
LL | async fn foo(x: u32) -> u32 {
|
|
| ^^^query stack during panic:
|
|
#0 [typeck] type-checking `foo`
|
|
#1 [thir_body] building THIR for `foo`
|
|
#2 [mir_built] building MIR for `foo`
|
|
#3 [unsafety_check_result] unsafety-checking `foo`
|
|
#4 [mir_const] preparing `foo` for borrow checking
|
|
#5 [mir_promoted] processing MIR for `foo`
|
|
#6 [mir_borrowck] borrow-checking `foo`
|
|
#7 [type_of] computing type of `foo::{opaque#0}`
|
|
#8 [check_mod_item_types] checking item types in top-level module
|
|
#9 [analysis] running analysis passes on this crate
|
|
end of query stack
|
|
error: aborting due to 4 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0277`.
|