| error[E0391]: cycle detected when building THIR for `defines` |
| --> $DIR/non-structural-match-types-cycle-err.rs:19:9 |
| | |
| LL | AnyOption::<_>::NONE => {} |
| | ^^^^^^^^^^^^^^^^^^^^ |
| | |
| note: ...which requires evaluating type-level constant... |
| --> $DIR/non-structural-match-types-cycle-err.rs:5:5 |
| | |
| LL | const NONE: Option<T> = None; |
| | ^^^^^^^^^^^^^^^^^^^^^ |
| note: ...which requires const-evaluating + checking `<impl at $DIR/non-structural-match-types-cycle-err.rs:4:1: 4:21>::NONE`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:5:5 |
| | |
| LL | const NONE: Option<T> = None; |
| | ^^^^^^^^^^^^^^^^^^^^^ |
| = note: ...which requires computing layout of `core::option::Option<{async block@$DIR/non-structural-match-types-cycle-err.rs:18:16: 18:21}>`... |
| = note: ...which requires computing layout of `{async block@$DIR/non-structural-match-types-cycle-err.rs:18:16: 18:21}`... |
| note: ...which requires optimizing MIR for `defines::{closure#0}`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:18:16 |
| | |
| LL | match Some(async {}) { |
| | ^^^^^ |
| note: ...which requires elaborating drops for `defines::{closure#0}`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:18:16 |
| | |
| LL | match Some(async {}) { |
| | ^^^^^ |
| note: ...which requires borrow-checking `defines`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| note: ...which requires promoting constants in MIR for `defines`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| note: ...which requires checking if `defines` contains FFI-unwind calls... |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| note: ...which requires building MIR for `defines`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| note: ...which requires match-checking `defines`... |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| = note: ...which again requires building THIR for `defines`, completing the cycle |
| note: cycle used when unsafety-checking `defines` |
| --> $DIR/non-structural-match-types-cycle-err.rs:17:1 |
| | |
| LL | fn defines() { |
| | ^^^^^^^^^^^^ |
| = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information |
| |
| error: aborting due to 1 previous error |
| |
| For more information about this error, try `rustc --explain E0391`. |