1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file1.ts ===
class C extends E { foo: string; } // error
>C : C
>E : typeof E
>foo : string
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file2.ts ===
class D extends C { bar: string; }
>D : D
>C : typeof C
>bar : string
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file3.ts ===
class E extends D { baz: number; }
>E : E
>D : typeof D
>baz : number
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file4.ts ===
class C2<T> extends E2<T> { foo: T; } // error
>C2 : C2<T>
>E2 : typeof E2
>foo : T
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file5.ts ===
class D2<T> extends C2<T> { bar: T; }
>D2 : D2<T>
>C2 : typeof C2
>bar : T
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsItselfIndirectly_file6.ts ===
class E2<T> extends D2<T> { baz: T; }
>E2 : E2<T>
>D2 : typeof D2
>baz : T
|