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

static method f<T extends core::Object = dynamic>() → self::f::T
  return null;
static method test() → void {
  do {
    dynamic x = 0;
  }
  while (self::f<dynamic>())
}
static method main() → dynamic {}
