abstract class A<X> {
  List<X> foo;
}

class B implements A<int> {
  dynamic noSuchMethod(i) => <dynamic>[];
}

main() {}
void expectTypeError(callback()) {}
