From ae4e1082d4502d1859e44ebe3aff99a6fb53f05b Mon Sep 17 00:00:00 2001 From: Jeffrey Seyfried Date: Mon, 7 Mar 2016 23:08:21 +0000 Subject: [PATCH] Disallow methods from shadowed traits --- src/librustc_resolve/resolve_imports.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/librustc_resolve/resolve_imports.rs b/src/librustc_resolve/resolve_imports.rs index c2b665b3b4c..3357926f623 100644 --- a/src/librustc_resolve/resolve_imports.rs +++ b/src/librustc_resolve/resolve_imports.rs @@ -743,9 +743,9 @@ impl<'a, 'b:'a, 'tcx:'b> ImportResolver<'a, 'b, 'tcx> { } } - // FIXME #31379: We can use methods from imported traits shadowed by non-import items - if !binding.is_import() { - for glob_binding in resolution.duplicate_globs.iter() { + // We can always use methods from the prelude traits + for glob_binding in resolution.duplicate_globs.iter() { + if glob_binding.defined_with(DefModifiers::PRELUDE) { module.shadowed_traits.borrow_mut().push(glob_binding); } }