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

class C extends core::Object {
  synthetic constructor •() → self::C*
    : super core::Object::•()
    ;
  method f() → core::int*
    return null;
}
static method g(self::C* c) → dynamic {
  dynamic x = let final dynamic #t1 = c in #t1.==(null) ? null : #t1.f();
  let final dynamic #t2 = c in #t2.==(null) ? null : #t2.f();
}
static method main() → dynamic {}
