1 error[E0308]: mismatched types
2 --> $DIR/issue-5358-1.rs:6:9
4 LL | match S(Either::Left(5)) {
5 | ------------------ this match expression has type `S`
6 LL | Either::Right(_) => {}
7 | ^^^^^^^^^^^^^^^^ expected struct `S`, found enum `Either`
9 = note: expected type `S`
10 found type `Either<_, _>`
12 error: aborting due to previous error
14 For more information about this error, try `rustc --explain E0308`.