error: expected `{`, found keyword `false`
  --> $DIR/else-no-if.rs:7:12
   |
LL |     } else false {
   |       ---- ^^^^^
   |       |
   |       expected an `if` or a block after this `else`
   |
help: add an `if` if this is the condition of a chained `else if` statement
   |
LL |     } else if false {
   |            ++

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:14:12
   |
LL |     } else falsy() {
   |       ---- ^^^^^
   |       |
   |       expected an `if` or a block after this `else`
   |
help: add an `if` if this is the condition of a chained `else if` statement
   |
LL |     } else if falsy() {
   |            ++

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:21:12
   |
LL |     } else falsy();
   |            ^^^^^ expected `{`
   |
help: try placing this code inside a block
   |
LL |     } else { falsy() };
   |            +         +

error: expected `{`, found keyword `loop`
  --> $DIR/else-no-if.rs:27:12
   |
LL |     } else loop{}
   |            ^^^^ expected `{`
   |
help: try placing this code inside a block
   |
LL |     } else { loop{} }
   |            +        +

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:34:12
   |
LL |     } else falsy!() {
   |       ---- ^^^^^
   |       |
   |       expected an `if` or a block after this `else`
   |
help: add an `if` if this is the condition of a chained `else if` statement
   |
LL |     } else if falsy!() {
   |            ++

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:41:12
   |
LL |     } else falsy!();
   |            ^^^^^ expected `{`
   |
help: try placing this code inside a block
   |
LL |     } else { falsy!() };
   |            +          +

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:47:12
   |
LL |     } else falsy! {} {
   |            ^^^^^ expected `{`
   |
help: try placing this code inside a block
   |
LL |     } else { falsy! {} } {
   |            +           +

error: expected `{`, found `falsy`
  --> $DIR/else-no-if.rs:54:12
   |
LL |     } else falsy! {};
   |            ^^^^^ expected `{`
   |
help: try placing this code inside a block
   |
LL |     } else { falsy! {} };
   |            +           +

error: aborting due to 8 previous errors

