From 91882fddd4f13d6ccbc0da54ad482b9c3033149e Mon Sep 17 00:00:00 2001 From: Jeffrey Seyfried Date: Tue, 3 Jan 2017 02:47:18 +0000 Subject: [PATCH] Don't `unused_qualifications`-check global paths. --- src/librustc_resolve/lib.rs | 2 +- src/test/compile-fail/lint-qualification.rs | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/librustc_resolve/lib.rs b/src/librustc_resolve/lib.rs index 325fc11fdeb7e..4d25609bfd266 100644 --- a/src/librustc_resolve/lib.rs +++ b/src/librustc_resolve/lib.rs @@ -2314,7 +2314,7 @@ impl<'a> Resolver<'a> { _ => return None, }; - if path.len() == 1 || result.base_def == Def::Err { + if path.len() == 1 || result.base_def == Def::Err || global { return Some(result); } diff --git a/src/test/compile-fail/lint-qualification.rs b/src/test/compile-fail/lint-qualification.rs index af9b21dadd1d0..57c2166565f96 100644 --- a/src/test/compile-fail/lint-qualification.rs +++ b/src/test/compile-fail/lint-qualification.rs @@ -21,8 +21,9 @@ fn main() { let _ = || -> Result<(), ()> { try!(Ok(())); Ok(()) }; // issue #37345 - macro_rules! m { - () => { $crate::foo::bar(); } - } - m!(); // issue #37357 + macro_rules! m { () => { + $crate::foo::bar(); // issue #37357 + ::foo::bar(); // issue #38682 + } } + m!(); }