| class Super { |
| void method(num a) {} |
| num operator [](num a) => 0; |
| void operator []=(num a, num b) {} |
| void set setter(num a) {} |
| } |
| |
| class Super1 { |
| num? operator [](num a) => null; |
| void operator []=(num a, num b) {} |
| } |
| |
| class Class extends Super { |
| void method(covariant int a); |
| num operator [](covariant int a); |
| void operator []=(covariant int a, covariant int b); |
| void set setter(covariant int a); |
| } |
| |
| class Class1 extends Super1 { |
| num? operator [](covariant int a); |
| void operator []=(covariant int a, covariant int b); |
| } |
| |
| class Subclass extends Class { |
| void method(int a) {} |
| num operator [](covariant int a) {} |
| void operator []=(covariant int a, covariant int b) {} |
| void set setter(int a) {} |
| } |
| |
| class Subclass1 extends Class1 { |
| num? operator [](covariant int a) {} |
| void operator []=(covariant int a, covariant int b) {} |
| } |
| |
| mixin Mixin on Class { |
| void method(int a) {} |
| num operator [](covariant int a) {} |
| void operator []=(covariant int a, covariant int b) {} |
| void set setter(int a) {} |
| } |
| mixin Mixin1 on Class1 { |
| void operator []=(covariant int a, covariant int b) {} |
| } |