#include <metal_stdlib>
using namespace metal;

#define TINT_ISOLATE_UB(VOLATILE_NAME) \
  volatile bool VOLATILE_NAME = true; \
  if (VOLATILE_NAME)

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