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

class C extends core::Object {
  field dynamic f;
  constructor •(dynamic f) → self::C
    : self::C::f = f, super core::Object::•()
    ;
}
static method g(self::C c) → void {
  let final self::C #t1 = c in let final core::double #t2 = 1.5 in #t1.{self::C::f}{dynamic}{dynamic}.call(#t2);
}
static method h(core::int i) → void {}
static method test() → void {
  self::g(new self::C::•(#C1));
}
static method main() → dynamic {}

constants  {
  #C1 = static-tearoff self::h
}
