library test;
import self as self;
import "dart:core" as core;

static method test(core::int* x, () →* void f) → void {
  #L1:
  switch(x) {
    #L2:
    case #C1:
      {
        f.call();
        continue #L3;
      }
    #L3:
    case #C2:
      {
        f.call();
        break #L1;
      }
  }
}
static method main() → dynamic {}

constants  {
  #C1 = 0
  #C2 = 1
}
