#include <metal_stdlib>
using namespace metal;

int f() {
  int i = 0;
  {
    while(true) {
      i = (i + 1);
      if ((i > 4)) {
        return i;
      }
      continue;
    }
  }
  /* unreachable */
}
