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