library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

static method test() → void {
  core::num x;
  for (final core::int #t1 = x = 0; x.{core::num::<}(10){(core::num) → core::bool}; x = x.{core::num::+}(1){(core::num) → core::num}) {
    if(x is{ForNonNullableByDefault} core::int) {
      core::int y = x{core::int};
    }
  }
}
static method main() → dynamic {}
