diff options
| author | Marcin Serwin <toxyxer@gmail.com> | 2020-03-20 11:25:39 +0100 |
|---|---|---|
| committer | Marcin Serwin <toxyxer@gmail.com> | 2020-04-09 08:07:18 +0200 |
| commit | d3167c63f84fcf34e81eb78c44c8f70ada07080b (patch) | |
| tree | 3e55c8ac21fecf3a7fa4746dc64c834ba5ddaa19 | |
| parent | 1bab67c72b50c995c7b981fddff89e61c8a723af (diff) | |
| download | rust-d3167c63f84fcf34e81eb78c44c8f70ada07080b.tar.gz rust-d3167c63f84fcf34e81eb78c44c8f70ada07080b.zip | |
Handle constant arrays with single value
| -rw-r--r-- | clippy_lints/src/consts.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/clippy_lints/src/consts.rs b/clippy_lints/src/consts.rs index c25200c3338..b9160712915 100644 --- a/clippy_lints/src/consts.rs +++ b/clippy_lints/src/consts.rs @@ -356,6 +356,17 @@ impl<'c, 'cc> ConstEvalLateContext<'c, 'cc> { Constant::F64(x) => Some(Constant::F64(x)), _ => None, }, + (Some(Constant::Vec(vec)), _) => { + if !vec.is_empty() && vec.iter().all(|x| *x == vec[0]) { + match vec[0] { + Constant::F32(x) => Some(Constant::F32(x)), + Constant::F64(x) => Some(Constant::F64(x)), + _ => None, + } + } else { + None + } + }, _ => None, } } |
