bool _called = false;
String init(String val) { }
class C {
  static late String;
  operator? ( ){ }
  s = init("lateValue");
}
main() { }
expect(expected, actual) { }
throws(void Function() f) { }
