1 error: functions cannot be both `const` and `async`
2 --> $DIR/no-const-async.rs:4:5
4 LL | pub const async fn x() {}
5 | ----^^^^^-^^^^^----------
7 | | `async` because of this
8 | `const` because of this
10 error[E0391]: cycle detected when computing type of `x::{opaque#0}`
11 --> $DIR/no-const-async.rs:4:24
13 LL | pub const async fn x() {}
16 note: ...which requires borrow-checking `x`...
17 --> $DIR/no-const-async.rs:4:1
19 LL | pub const async fn x() {}
20 | ^^^^^^^^^^^^^^^^^^^^^^
21 note: ...which requires processing MIR for `x`...
22 --> $DIR/no-const-async.rs:4:1
24 LL | pub const async fn x() {}
25 | ^^^^^^^^^^^^^^^^^^^^^^
26 note: ...which requires const checking `x`...
27 --> $DIR/no-const-async.rs:4:1
29 LL | pub const async fn x() {}
30 | ^^^^^^^^^^^^^^^^^^^^^^
31 = note: ...which requires computing whether `impl core::future::future::Future<Output = ()>` is freeze...
32 = note: ...which requires evaluating trait selection obligation `impl core::future::future::Future<Output = ()>: core::marker::Freeze`...
33 = note: ...which again requires computing type of `x::{opaque#0}`, completing the cycle
34 note: cycle used when checking item types in top-level module
35 --> $DIR/no-const-async.rs:4:1
37 LL | pub const async fn x() {}
38 | ^^^^^^^^^^^^^^^^^^^^^^^^^
40 error: aborting due to 2 previous errors
42 For more information about this error, try `rustc --explain E0391`.