about summary refs log tree commit diff
path: root/tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs')
-rw-r--r--tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs b/tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs
new file mode 100644
index 00000000000..2003e1e293a
--- /dev/null
+++ b/tests/ui/lint/dead-code/multiple-dead-codes-in-the-same-struct.rs
@@ -0,0 +1,29 @@
+#![warn(dead_code)]
+
+struct Bar {
+    #[allow(dead_code)]
+    a: usize,
+    #[forbid(dead_code)]
+    b: usize, //~ ERROR field `b` is never read
+    #[deny(dead_code)]
+    c: usize, //~ ERROR fields `c` and `e` are never read
+    d: usize, //~ WARN fields `d`, `f`, and `g` are never read
+    #[deny(dead_code)]
+    e: usize,
+    f: usize,
+    g: usize,
+    _h: usize,
+}
+
+fn main() {
+    Bar {
+        a: 1,
+        b: 1,
+        c: 1,
+        d: 1,
+        e: 1,
+        f: 1,
+        g: 1,
+        _h: 1,
+    };
+}