blob: 3023dc3c5ec76205f50aeb3ac3e81cb67b88a28e [file] [log] [blame]
class A1<T> {}
typedef B1<T> = A1<T>;
class A2<T extends num> {}
typedef B2<T extends num> = A2<T>;
class A3<T extends List<dynamic>, S extends Never?> {}
typedef B3<T extends List<Object?>, S extends Null> = A3<T, S>;
class A4<T extends num> {}
typedef B4<T extends int> = A4<T>;
class A5<T extends List<dynamic>, S extends Never?> {}
typedef B5<T extends List<Object?>, S extends Null> = A5;
class StaticIdentityTest {
const StaticIdentityTest(a, b) : assert(identical(a, b));
}
test1() => const StaticIdentityTest(A1.new, B1.new);
test2() => const StaticIdentityTest(A2.new, B2.new);
test3() => const StaticIdentityTest(A3.new, B3.new);
test4() => const StaticIdentityTest(A4.new, B4.new);
test5() => const StaticIdentityTest(A5.new, B5.new);
main() {}