File tree 2 files changed +57
-0
lines changed
2 files changed +57
-0
lines changed Original file line number Diff line number Diff line change
1
+ // Test for issue #67776: binding named the same as enum variant
2
+ // should report a warning even when matching against a borrow
3
+
4
+ // check-pass
5
+
6
+ #![ allow( unused_variables) ]
7
+ #![ allow( non_snake_case) ]
8
+
9
+ enum Foo {
10
+ Bar ,
11
+ Baz ,
12
+ }
13
+
14
+
15
+ fn fn2 ( e : Foo ) {
16
+ match e {
17
+ Bar => println ! ( "A" ) ,
18
+ //~^ WARNING named the same as one of the variants of the type `Foo`
19
+ Baz => println ! ( "B" ) ,
20
+ //~^ WARNING named the same as one of the variants of the type `Foo`
21
+ }
22
+ }
23
+
24
+ fn fn1 ( e : & Foo ) {
25
+ match e {
26
+ Bar => println ! ( "A" ) ,
27
+ //~^ WARNING named the same as one of the variants of the type `Foo`
28
+ Baz => println ! ( "B" ) ,
29
+ //~^ WARNING named the same as one of the variants of the type `Foo`
30
+ }
31
+ }
32
+
33
+ fn main ( ) { }
Original file line number Diff line number Diff line change
1
+ warning[E0170]: pattern binding `Bar` is named the same as one of the variants of the type `Foo`
2
+ --> $DIR/match-same-name-enum-variant.rs:14:9
3
+ |
4
+ LL | Bar => println!("A"),
5
+ | ^^^ help: to match on the variant, qualify the path: `Foo::Bar`
6
+
7
+ warning[E0170]: pattern binding `Baz` is named the same as one of the variants of the type `Foo`
8
+ --> $DIR/match-same-name-enum-variant.rs:16:9
9
+ |
10
+ LL | Baz => println!("B"),
11
+ | ^^^ help: to match on the variant, qualify the path: `Foo::Baz`
12
+
13
+ warning[E0170]: pattern binding `Bar` is named the same as one of the variants of the type `Foo`
14
+ --> $DIR/match-same-name-enum-variant.rs:23:9
15
+ |
16
+ LL | Bar => println!("A"),
17
+ | ^^^ help: to match on the variant, qualify the path: `Foo::Bar`
18
+
19
+ warning[E0170]: pattern binding `Baz` is named the same as one of the variants of the type `Foo`
20
+ --> $DIR/match-same-name-enum-variant.rs:25:9
21
+ |
22
+ LL | Baz => println!("B"),
23
+ | ^^^ help: to match on the variant, qualify the path: `Foo::Baz`
24
+
You can’t perform that action at this time.
0 commit comments