SKIP: FAILED


struct S {
  field0 : u32;
  field1 : f32;
  field2 : array<u32, 2u>;
};

var<private> x_1 : u32;

var<private> x_17 : bool;

fn main_1() {
  let x_101 : bool = x_17;
  loop {
    var x_2_phi : u32;
    var x_5_phi : u32;
    x_2_phi = 0u;
    x_5_phi = 1u;
    loop {
      var x_7 : u32;
      let x_2 : u32 = x_2_phi;
      let x_5 : u32 = x_5_phi;
      let x_4 : u32 = (x_2 + 1u);
      let x_6 : u32 = (x_4 + 1u);
      if (x_101) {
        break;
      }

      continuing {
        x_7 = (x_4 + x_6);
        x_2_phi = x_4;
        x_5_phi = x_7;
      }
    }
  }
  return;
}

@stage(fragment)
fn main() {
  main_1();
}

error: loop does not exit
