blob: d7b49e044b8780a4fbb9af4942122c5b3b1c7109 [file] [log] [blame]
import 'package:expect/expect.dart';
class Super<T> {
void method(T t) {
print(t.runtimeType);
}
}
class Mixin {
void method(int t) {
print(t + 1);
}
}
class Clazz = Super<int> with Mixin;
class Subclass extends Clazz {
void test() {
void Function(int) f = super.method;
f(42);
print(f);
}
}
class Subsub1 extends Subclass {
void a(dynamic x) {
print(x);
}
}
class Subsub2 extends Subclass {
void a(dynamic x) {
print(x);
print(x);
}
}
main() {
Super<Object> s = Subclass()..test();
Expect.throws(() => s.method(''));
dynamic x = Subsub1();
x.a(x);
x = Subsub2();
x.a(x);
}