Skip to content

Commit 76cf1b8

Browse files
committed
Add test for const panic in Rust 2021.
1 parent 91d0823 commit 76cf1b8

File tree

2 files changed

+94
-0
lines changed

2 files changed

+94
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// edition:2021
2+
#![feature(const_panic)]
3+
#![crate_type = "lib"]
4+
5+
const A: () = std::panic!("blåhaj");
6+
//~^ ERROR evaluation of constant value failed
7+
8+
const B: () = std::panic!();
9+
//~^ ERROR evaluation of constant value failed
10+
11+
const C: () = std::unreachable!();
12+
//~^ ERROR evaluation of constant value failed
13+
14+
const D: () = std::unimplemented!();
15+
//~^ ERROR evaluation of constant value failed
16+
17+
const E: () = core::panic!("shark");
18+
//~^ ERROR evaluation of constant value failed
19+
20+
const F: () = core::panic!();
21+
//~^ ERROR evaluation of constant value failed
22+
23+
const G: () = core::unreachable!();
24+
//~^ ERROR evaluation of constant value failed
25+
26+
const H: () = core::unimplemented!();
27+
//~^ ERROR evaluation of constant value failed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
error[E0080]: evaluation of constant value failed
2+
--> $DIR/const_panic_2021.rs:5:15
3+
|
4+
LL | const A: () = std::panic!("blåhaj");
5+
| ^^^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'blåhaj', $DIR/const_panic_2021.rs:5:15
6+
|
7+
= note: this error originates in the macro `$crate::panic::panic_2021` (in Nightly builds, run with -Z macro-backtrace for more info)
8+
9+
error[E0080]: evaluation of constant value failed
10+
--> $DIR/const_panic_2021.rs:8:15
11+
|
12+
LL | const B: () = std::panic!();
13+
| ^^^^^^^^^^^^^ the evaluated program panicked at 'explicit panic', $DIR/const_panic_2021.rs:8:15
14+
|
15+
= note: this error originates in the macro `$crate::panic::panic_2021` (in Nightly builds, run with -Z macro-backtrace for more info)
16+
17+
error[E0080]: evaluation of constant value failed
18+
--> $DIR/const_panic_2021.rs:11:15
19+
|
20+
LL | const C: () = std::unreachable!();
21+
| ^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_2021.rs:11:15
22+
|
23+
= note: this error originates in the macro `$crate::panic::panic_2015` (in Nightly builds, run with -Z macro-backtrace for more info)
24+
25+
error[E0080]: evaluation of constant value failed
26+
--> $DIR/const_panic_2021.rs:14:15
27+
|
28+
LL | const D: () = std::unimplemented!();
29+
| ^^^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'not implemented', $DIR/const_panic_2021.rs:14:15
30+
|
31+
= note: this error originates in the macro `$crate::panic::panic_2015` (in Nightly builds, run with -Z macro-backtrace for more info)
32+
33+
error[E0080]: evaluation of constant value failed
34+
--> $DIR/const_panic_2021.rs:17:15
35+
|
36+
LL | const E: () = core::panic!("shark");
37+
| ^^^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'shark', $DIR/const_panic_2021.rs:17:15
38+
|
39+
= note: this error originates in the macro `$crate::panic::panic_2021` (in Nightly builds, run with -Z macro-backtrace for more info)
40+
41+
error[E0080]: evaluation of constant value failed
42+
--> $DIR/const_panic_2021.rs:20:15
43+
|
44+
LL | const F: () = core::panic!();
45+
| ^^^^^^^^^^^^^^ the evaluated program panicked at 'explicit panic', $DIR/const_panic_2021.rs:20:15
46+
|
47+
= note: this error originates in the macro `$crate::panic::panic_2021` (in Nightly builds, run with -Z macro-backtrace for more info)
48+
49+
error[E0080]: evaluation of constant value failed
50+
--> $DIR/const_panic_2021.rs:23:15
51+
|
52+
LL | const G: () = core::unreachable!();
53+
| ^^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_2021.rs:23:15
54+
|
55+
= note: this error originates in the macro `$crate::panic::panic_2015` (in Nightly builds, run with -Z macro-backtrace for more info)
56+
57+
error[E0080]: evaluation of constant value failed
58+
--> $DIR/const_panic_2021.rs:26:15
59+
|
60+
LL | const H: () = core::unimplemented!();
61+
| ^^^^^^^^^^^^^^^^^^^^^^ the evaluated program panicked at 'not implemented', $DIR/const_panic_2021.rs:26:15
62+
|
63+
= note: this error originates in the macro `$crate::panic::panic_2015` (in Nightly builds, run with -Z macro-backtrace for more info)
64+
65+
error: aborting due to 8 previous errors
66+
67+
For more information about this error, try `rustc --explain E0080`.

0 commit comments

Comments
 (0)