From 3b2ff90529ec6c24d87a7a163ed6acf70acfe4b3 Mon Sep 17 00:00:00 2001 From: Xelph Date: Mon, 2 Dec 2024 20:55:45 -0700 Subject: [PATCH] Add ui test for const evaluation fail when type is too big. --- tests/ui/consts/const-eval-fail-too-big.rs | 12 ++++++++++++ tests/ui/consts/const-eval-fail-too-big.stderr | 9 +++++++++ 2 files changed, 21 insertions(+) create mode 100644 tests/ui/consts/const-eval-fail-too-big.rs create mode 100644 tests/ui/consts/const-eval-fail-too-big.stderr diff --git a/tests/ui/consts/const-eval-fail-too-big.rs b/tests/ui/consts/const-eval-fail-too-big.rs new file mode 100644 index 0000000000000..4b5dbc1d7a4ef --- /dev/null +++ b/tests/ui/consts/const-eval-fail-too-big.rs @@ -0,0 +1,12 @@ +//Error output test for #78834: Type is too big for the target architecture +struct B< + A: Sized = [(); { + let x = [0u8; !0usize]; + //~^ ERROR evaluation of constant value failed + 1 + }], +> { + a: A, +} + +fn main() {} diff --git a/tests/ui/consts/const-eval-fail-too-big.stderr b/tests/ui/consts/const-eval-fail-too-big.stderr new file mode 100644 index 0000000000000..ae6664832336e --- /dev/null +++ b/tests/ui/consts/const-eval-fail-too-big.stderr @@ -0,0 +1,9 @@ +error[E0080]: evaluation of constant value failed + --> $DIR/const-eval-fail-too-big.rs:4:28 + | +LL | let x = [0u8; !0usize]; + | ^^^^^^^^^^^^^^ values of the type `[u8; usize::MAX]` are too big for the target architecture + +error: aborting due to 1 previous error + +For more information about this error, try `rustc --explain E0080`.