From 0e411c2597dcfe75dd76acefcecec916a950ac6e Mon Sep 17 00:00:00 2001 From: Kevin Leimkuhler Date: Tue, 9 Oct 2018 17:37:45 -0700 Subject: [PATCH] Add clarifying pattern lint comment and revert test --- src/librustc_lint/unused.rs | 4 ++++ src/test/run-pass/binding/pat-tuple-7.rs | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/librustc_lint/unused.rs b/src/librustc_lint/unused.rs index 050e52d2e0cd..297b60d57289 100644 --- a/src/librustc_lint/unused.rs +++ b/src/librustc_lint/unused.rs @@ -377,6 +377,10 @@ impl EarlyLintPass for UnusedParens { fn check_pat(&mut self, cx: &EarlyContext, p: &ast::Pat) { use ast::PatKind::{Paren, Range}; + // The lint visitor will visit each subpattern of `p`. We do not want to lint any range + // pattern no matter where it occurs in the pattern. For something like `&(a..=b)`, there + // is a recursive `check_pat` on `a` and `b`, but we will assume that if there are + // unnecessry parens they serve a purpose of readability. if let Paren(ref pat) = p.node { match pat.node { Range(..) => {} diff --git a/src/test/run-pass/binding/pat-tuple-7.rs b/src/test/run-pass/binding/pat-tuple-7.rs index f02e3198984f..06bd14d188e3 100644 --- a/src/test/run-pass/binding/pat-tuple-7.rs +++ b/src/test/run-pass/binding/pat-tuple-7.rs @@ -11,7 +11,8 @@ // run-pass fn main() { + #[allow(unused_parens)] match 0 { - pat => assert_eq!(pat, 0) + (pat) => assert_eq!(pat, 0) } }