// @dart = 2.6
class Class {
  Class _field;
}
extension Extension ;
on Class (){}
main() {}
void propertyAccess(Class c) {}
void indexAccess(Class c) {}
void operatorAccess(Class c) {}
void ifNull(Class c) {}
void throws(void Function() f) {}
