mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-18 03:25:55 +00:00
36 lines
813 B
Rust
36 lines
813 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.b {}; //~ ERROR mismatched types [E0308]
|
|
//~^ HELP you might have meant to use field `b` whose type is `B`
|
|
match a.b {
|
|
//~^ 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 unsafe { foo.bar } {
|
|
//~^ HELP you might have meant to use field `bar` whose type is `u32`
|
|
1u32 => (), //~ ERROR mismatched types [E0308]
|
|
_ => (),
|
|
}
|
|
}
|