summaryrefslogtreecommitdiffstats
path: root/src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs')
-rw-r--r--src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs b/src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs
new file mode 100644
index 000000000..dd2fe7973
--- /dev/null
+++ b/src/test/ui/structs/suggest-replacing-field-when-specifying-same-type.rs
@@ -0,0 +1,28 @@
+enum Foo {
+ Bar { a: u8, b: i8, c: u8 },
+ Baz { a: f32 },
+ None,
+}
+
+fn main() {
+ let foo = Foo::None;
+ match foo {
+ Foo::Bar { a, aa: 1, c } => (),
+ //~^ ERROR variant `Foo::Bar` does not have a field named `aa` [E0026]
+ //~| ERROR pattern does not mention field `b` [E0027]
+ Foo::Baz { bb: 1.0 } => (),
+ //~^ ERROR variant `Foo::Baz` does not have a field named `bb` [E0026]
+ //~| ERROR pattern does not mention field `a` [E0027]
+ _ => (),
+ }
+
+ match foo {
+ Foo::Bar { a, aa: "", c } => (),
+ //~^ ERROR variant `Foo::Bar` does not have a field named `aa` [E0026]
+ //~| ERROR pattern does not mention field `b` [E0027]
+ Foo::Baz { bb: "" } => (),
+ //~^ ERROR variant `Foo::Baz` does not have a field named `bb` [E0026]
+ //~| pattern does not mention field `a` [E0027]
+ _ => (),
+ }
+}