blob: 4b1f62d8056df3654933e6c7e465c1acec1924c5 [file] [log] [blame]
// This is not autofixable because we give extra suggestions to end the first expression with `;`.
fn foo(a: Option<u32>, b: Option<u32>) -> bool {
if let Some(x) = a { true } else { false }
//~^ ERROR mismatched types
//~| ERROR mismatched types
&& //~ ERROR mismatched types
if let Some(y) = a { true } else { false }
}
fn bar() -> bool {
false
}
fn main() {
if true { true } else { false } && true;
//~^ ERROR mismatched types
//~| ERROR mismatched types
if true { true } else { false } && if true { true } else { false };
//~^ ERROR mismatched types
//~| ERROR mismatched types
if true { true } else { false } if true { true } else { false };
//~^ ERROR mismatched types
//~| ERROR mismatched types
if true { bar() } else { bar() } && if true { bar() } else { bar() };
//~^ ERROR mismatched types
//~| ERROR mismatched types
if true { bar() } else { bar() } if true { bar() } else { bar() };
//~^ ERROR mismatched types
//~| ERROR mismatched types
let _ = if true { true } else { false } && true; // ok
}