| 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`... | |
| note: ...which requires computing layout of `core::option::Option<{async block@$DIR/non-structural-match-types-cycle-err.rs:18:16: 18:21}>`... | |
| --> $SRC_DIR/core/src/option.rs:LL:COL | |
| note: ...which requires computing layout of `{async block@$DIR/non-structural-match-types-cycle-err.rs:18:16: 18:21}`... | |
| --> $DIR/non-structural-match-types-cycle-err.rs:18:16 | |
| | | |
| LL | match Some(async {}) { | |
| | ^^^^^ | |
| = note: ...which requires optimizing MIR for `defines::{closure#0}`... | |
| = note: ...which requires elaborating drops for `defines::{closure#0}`... | |
| 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`... | |
| = note: ...which requires checking if `defines` contains FFI-unwind calls... | |
| = note: ...which requires building MIR for `defines`... | |
| = note: ...which requires match-checking `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: for more information, see <https://rustc-dev-guide.rust-lang.org/overview.html#queries> and <https://rustc-dev-guide.rust-lang.org/query.html> | |
| error: aborting due to 1 previous error | |
| For more information about this error, try `rustc --explain E0391`. |