mirror of
https://github.com/rust-lang/rust
synced 2024-11-05 20:45:15 +00:00
35 lines
795 B
Rust
35 lines
795 B
Rust
//@ run-rustfix
|
|
#![allow(dead_code)]
|
|
|
|
struct A {
|
|
b: B,
|
|
}
|
|
|
|
enum B {
|
|
Fst,
|
|
Snd,
|
|
}
|
|
|
|
union Foo {
|
|
bar: u32,
|
|
qux: f32,
|
|
}
|
|
|
|
fn main() {
|
|
let a = A { b: B::Fst };
|
|
if let B::Fst = a {}; //~ ERROR mismatched types [E0308]
|
|
//~^ HELP you might have meant to use field `b` whose type is `B`
|
|
match a {
|
|
//~^ HELP you might have meant to use field `b` whose type is `B`
|
|
//~| HELP you might have meant to use field `b` whose type is `B`
|
|
B::Fst => (), //~ ERROR mismatched types [E0308]
|
|
B::Snd => (), //~ ERROR mismatched types [E0308]
|
|
}
|
|
|
|
let foo = Foo { bar: 42 };
|
|
match foo {
|
|
//~^ HELP you might have meant to use field `bar` whose type is `u32`
|
|
1u32 => (), //~ ERROR mismatched types [E0308]
|
|
_ => (),
|
|
}
|
|
}
|