summary refs log tree commit diff
path: root/src/test/compile-fail/loop-does-not-diverge.rs
blob: 6f9b74a4ad7f9519a0866f3ff7b285cac9ec1a0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
/* Make sure a loop{} with a break in it can't be
   the tailexpr in the body of a diverging function */
fn forever() -> ! {
  loop {
    break;
  }
  return 42i; //~ ERROR expected `_|_` but found `int`
}

fn main() {
  if (1 == 2) { forever(); }
}