mirror of https://github.com/rust-lang/rust
53 lines
1.9 KiB
Plaintext
53 lines
1.9 KiB
Plaintext
error[E0080]: evaluation of constant value failed
|
|
--> $DIR/issue-76191.rs:8:37
|
|
|
|
|
LL | const RANGE2: RangeInclusive<i32> = panic!();
|
|
| ^^^^^^^^ the evaluated program panicked at 'explicit panic', $DIR/issue-76191.rs:8:37
|
|
|
|
|
= note: this error originates in the macro `$crate::panic::panic_2015` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-76191.rs:14:9
|
|
|
|
|
LL | const RANGE: RangeInclusive<i32> = 0..=255;
|
|
| -------------------------------- constant defined here
|
|
...
|
|
LL | match n {
|
|
| - this expression has type `i32`
|
|
LL | RANGE => {}
|
|
| ^^^^^
|
|
| |
|
|
| expected `i32`, found `RangeInclusive<i32>`
|
|
| `RANGE` is interpreted as a constant, not a new binding
|
|
|
|
|
= note: expected type `i32`
|
|
found struct `RangeInclusive<i32>`
|
|
help: you may want to move the range into the match block
|
|
|
|
|
LL | 0..=255 => {}
|
|
| ~~~~~~~
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-76191.rs:16:9
|
|
|
|
|
LL | const RANGE2: RangeInclusive<i32> = panic!();
|
|
| --------------------------------- constant defined here
|
|
...
|
|
LL | match n {
|
|
| - this expression has type `i32`
|
|
...
|
|
LL | RANGE2 => {}
|
|
| ^^^^^^
|
|
| |
|
|
| expected `i32`, found `RangeInclusive<i32>`
|
|
| `RANGE2` is interpreted as a constant, not a new binding
|
|
|
|
|
= note: expected type `i32`
|
|
found struct `RangeInclusive<i32>`
|
|
= note: constants only support matching by type, if you meant to match against a range of values, consider using a range pattern like `min ..= max` in the match block
|
|
|
|
error: aborting due to 3 previous errors
|
|
|
|
Some errors have detailed explanations: E0080, E0308.
|
|
For more information about an error, try `rustc --explain E0080`.
|