error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:15:8 | LL | if x = x { | ^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `x == x` error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:20:8 | LL | if (x = x) { | ^^^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `x == x` error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:25:8 | LL | if y = (Foo { foo: x }) { | ^^^^^^^^^^^^^^^^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `y == (Foo { foo: x })` error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:30:8 | LL | if 3 = x { | ^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `3 == x` error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:36:13 | LL | x = 4 | ^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `x == 4` error[E0308]: mismatched types --> $DIR/assignment-in-if.rs:38:13 | LL | x = 5 | ^^^^^ | | | expected `bool`, found `()` | help: try comparing for equality: `x == 5` error: aborting due to 6 previous errors For more information about this error, try `rustc --explain E0308`.