From c244c411e4c869a76c7a8163b67840bdf83674e6 Mon Sep 17 00:00:00 2001 From: Fabian Drinck Date: Mon, 18 Mar 2019 17:50:49 +0100 Subject: [PATCH] Handle glob import in redundancy check --- src/librustc_resolve/resolve_imports.rs | 5 ++++- src/test/ui/lint/use-redundant.stderr | 9 --------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/librustc_resolve/resolve_imports.rs b/src/librustc_resolve/resolve_imports.rs index 99e20c398d9..7ea07f5e0cb 100644 --- a/src/librustc_resolve/resolve_imports.rs +++ b/src/librustc_resolve/resolve_imports.rs @@ -1294,7 +1294,10 @@ impl<'a, 'b:'a> ImportResolver<'a, 'b> { directive.span, ) { Ok(other_binding) => { - is_redundant[ns] = Some(binding.def() == other_binding.def()); + is_redundant[ns] = Some( + binding.def() == other_binding.def() + && !other_binding.is_ambiguity() + ); redundant_span[ns] = Some((other_binding.span, other_binding.is_import())); } diff --git a/src/test/ui/lint/use-redundant.stderr b/src/test/ui/lint/use-redundant.stderr index 3554443590a..fbd9f81f18f 100644 --- a/src/test/ui/lint/use-redundant.stderr +++ b/src/test/ui/lint/use-redundant.stderr @@ -25,12 +25,3 @@ LL | use crate::foo::Bar; LL | use crate::foo::Bar; | ^^^^^^^^^^^^^^^ -warning: the item `S` is imported redundantly - --> $DIR/use-redundant.rs:25:9 - | -LL | use m1::*; - | ----- the item `S` is already imported here -... -LL | use m1::S; - | ^^^^^ -