2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/compiler/infinitelyExpandingTypeAssignability.ts ===
|
|
|
|
interface A<T> {
|
2015-04-16 01:44:20 +02:00
|
|
|
>A : A<T>
|
|
|
|
>T : T
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
x : T
|
2015-04-16 01:44:20 +02:00
|
|
|
>x : T
|
|
|
|
>T : T
|
2014-08-15 23:33:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
interface B<T> extends A<B<B<B<T>>>> { }
|
2015-04-16 01:44:20 +02:00
|
|
|
>B : B<T>
|
|
|
|
>T : T
|
|
|
|
>A : A<T>
|
|
|
|
>B : B<T>
|
|
|
|
>B : B<T>
|
|
|
|
>B : B<T>
|
|
|
|
>T : T
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
interface C<T> extends A<C<C<C<T>>>> { }
|
2015-04-16 01:44:20 +02:00
|
|
|
>C : C<T>
|
|
|
|
>T : T
|
|
|
|
>A : A<T>
|
|
|
|
>C : C<T>
|
|
|
|
>C : C<T>
|
|
|
|
>C : C<T>
|
|
|
|
>T : T
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var x : B<string>
|
2015-04-16 01:44:20 +02:00
|
|
|
>x : B<string>
|
|
|
|
>B : B<T>
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var y : C<string> = x
|
2015-04-16 01:44:20 +02:00
|
|
|
>y : C<string>
|
|
|
|
>C : C<T>
|
|
|
|
>x : B<string>
|
2014-08-15 23:33:16 +02:00
|
|
|
|