]> git.lizzy.rs Git - rust.git/commitdiff
Add test and fix dedup
authorEsteban Küber <esteban@kuber.com.ar>
Fri, 12 Apr 2019 18:42:52 +0000 (11:42 -0700)
committerEsteban Küber <esteban@kuber.com.ar>
Fri, 12 Apr 2019 20:14:15 +0000 (13:14 -0700)
src/librustc_resolve/resolve_imports.rs
src/test/ui/issues/issue-59896.rs [new file with mode: 0644]
src/test/ui/issues/issue-59896.stderr [new file with mode: 0644]

index 2c98c66c62e375bed09c6389dc7661270a9191f6..e3909b466558dd18f8efba893e72f54e6767d141 100644 (file)
@@ -1311,6 +1311,7 @@ fn check_for_redundant_imports(
             is_redundant.present_items().all(|is_redundant| is_redundant)
         {
             let mut redundant_spans: Vec<_> = redundant_span.present_items().collect();
+            redundant_spans.sort();
             redundant_spans.dedup();
             self.session.buffer_lint_with_diagnostic(
                 UNUSED_IMPORTS,
diff --git a/src/test/ui/issues/issue-59896.rs b/src/test/ui/issues/issue-59896.rs
new file mode 100644 (file)
index 0000000..cecf2c5
--- /dev/null
@@ -0,0 +1,10 @@
+#![deny(unused_imports)]
+
+struct S;
+
+fn main() {
+    use S;  //~ ERROR the item `S` is imported redundantly
+
+    let _s = S;
+}
+
diff --git a/src/test/ui/issues/issue-59896.stderr b/src/test/ui/issues/issue-59896.stderr
new file mode 100644 (file)
index 0000000..ef78f27
--- /dev/null
@@ -0,0 +1,17 @@
+error: the item `S` is imported redundantly
+  --> $DIR/issue-59896.rs:6:9
+   |
+LL | struct S;
+   | --------- the item `S` is already defined here
+...
+LL |     use S;
+   |         ^
+   |
+note: lint level defined here
+  --> $DIR/issue-59896.rs:1:9
+   |
+LL | #![deny(unused_imports)]
+   |         ^^^^^^^^^^^^^^
+
+error: aborting due to previous error
+