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

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