about summary refs log tree commit diff
path: root/tests/ui/lint/lint-directives-on-use-items-issue-10534.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/lint/lint-directives-on-use-items-issue-10534.rs')
-rw-r--r--tests/ui/lint/lint-directives-on-use-items-issue-10534.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/lint/lint-directives-on-use-items-issue-10534.rs b/tests/ui/lint/lint-directives-on-use-items-issue-10534.rs
new file mode 100644
index 00000000000..e5cb0d3df0e
--- /dev/null
+++ b/tests/ui/lint/lint-directives-on-use-items-issue-10534.rs
@@ -0,0 +1,24 @@
+#![deny(unused_imports)]
+#![allow(non_upper_case_globals)]
+
+// The aim of this test is to ensure that deny/allow/warn directives
+// are applied to individual "use" statements instead of silently
+// ignored.
+
+#[allow(dead_code)]
+mod a { pub static x: isize = 3; pub static y: isize = 4; }
+
+mod b {
+    use a::x; //~ ERROR: unused import
+    #[allow(unused_imports)]
+    use a::y; // no error here
+}
+
+#[allow(unused_imports)]
+mod c {
+    use a::x;
+    #[deny(unused_imports)]
+    use a::y; //~ ERROR: unused import
+}
+
+fn main() {}