//@ 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]
        _ => (),
    }
}
