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

static method f<T extends core::Object? = dynamic>() → self::f::T%
  return throw "";
static method test() → void {
  while (self::f<core::bool>()) {
    core::int x = 0;
  }
}
static method main() → dynamic {}
