Skip to content

Commit f0aa2c1

Browse files
authored
Merge pull request #2127 from rust-lang-nursery/enum_variant_names_fp
Don't lint accidental "prefixes" on enum variants
2 parents 58002b0 + af6e2a1 commit f0aa2c1

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

clippy_lints/src/enum_variants.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,8 @@ fn check_variant(
159159
}
160160
for var in &def.variants {
161161
let name = var2str(var);
162-
if partial_match(item_name, &name) == item_name_chars {
162+
if partial_match(item_name, &name) == item_name_chars &&
163+
name.chars().nth(item_name_chars).map_or(false, |c| !c.is_lowercase()) {
163164
span_lint(cx, lint, var.span, "Variant name starts with the enum's name");
164165
}
165166
if partial_rmatch(item_name, &name) == item_name_chars {

tests/ui/enum_variants.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,4 +102,18 @@ mod allowed {
102102
}
103103
}
104104

105+
// should not lint
106+
enum Pat {
107+
Foo,
108+
Bar,
109+
Path,
110+
}
111+
112+
// should not lint
113+
enum N {
114+
Pos,
115+
Neg,
116+
Float,
117+
}
118+
105119
fn main() {}

0 commit comments

Comments
 (0)