summaryrefslogtreecommitdiffstats
path: root/src/test/ui/liveness/liveness-consts.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /src/test/ui/liveness/liveness-consts.rs
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/liveness/liveness-consts.rs')
-rw-r--r--src/test/ui/liveness/liveness-consts.rs63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/test/ui/liveness/liveness-consts.rs b/src/test/ui/liveness/liveness-consts.rs
new file mode 100644
index 000000000..8fe2453ca
--- /dev/null
+++ b/src/test/ui/liveness/liveness-consts.rs
@@ -0,0 +1,63 @@
+// check-pass
+#![warn(unused)]
+#![allow(unreachable_code)]
+
+pub static A: i32 = {
+ let mut i = 0;
+ let mut a = 0; //~ WARN variable `a` is assigned to, but never used
+ while i < 10 {
+ i += 1;
+ a += 1;
+ }
+ i
+};
+
+pub const B: u32 = {
+ let mut b = 1;
+ b += 1; //~ WARN value assigned to `b` is never read
+ b = 42;
+ b
+};
+
+pub enum E {
+ V1 = {
+ let e = 1; //~ WARN unused variable: `e`
+ 1
+ },
+ V2 = {
+ let _f = 10;
+ 2
+ }
+}
+
+pub fn f(x: [u8; { let s = 17; 100 }]) -> [u8; { let z = 18; 100 }] {
+ //~^ WARN unused variable: `s`
+ //~| WARN unused variable: `z`
+ x
+}
+
+pub trait T {
+ const T: usize = {
+ let mut t = 10;
+ t = t + t; //~ WARN value assigned to `t` is never read
+ 20
+ };
+}
+
+impl T for String {
+ const T: usize = {
+ let w = 10; //~ WARN unused variable: `w`
+ loop {
+ break;
+ let _ = w;
+ }
+ 44
+ };
+}
+
+fn main() {
+ let _ = [(); {
+ let z = 42; //~ WARN unused variable: `z`
+ 35
+ }];
+}