1 // Regression test for #87051, where a double semicolon was erroneously
2 // suggested after a `?` operator.
4 fn main() -> Result<(), ()> {
7 //~^ ERROR: mismatched types [E0308]
8 //~| NOTE: expected `()`, found `i32`
9 //~| HELP: consider using a semicolon here
12 // Here, we do want to suggest a semicolon:
15 //~^ NOTE: expected this to be `()`
17 //~^ ERROR: mismatched types [E0308]
18 //~| NOTE: expected `()`, found integer
19 //~| HELP: consider using a semicolon here
21 //~^ HELP: consider using a semicolon here
26 fn a<F>(f: F) -> Result<(), ()> where F: FnMut() { Ok(()) }