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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
=== tests/cases/compiler/inheritanceOfGenericConstructorMethod2.ts ===
module M {
>M : typeof M
export class C1 { }
>C1 : C1
export class C2<T> { }
>C2 : C2<T>
}
module N {
>N : typeof N
export class D1 extends M.C1 { }
>D1 : D1
>M.C1 : M.C1
>M : typeof M
>C1 : typeof M.C1
export class D2<T> extends M.C2<T> { }
>D2 : D2<T>
>M.C2 : M.C2<T>
>M : typeof M
>C2 : typeof M.C2
}
var c = new M.C2<number>(); // no error
>c : M.C2<number>
>new M.C2<number>() : M.C2<number>
>M.C2 : typeof M.C2
>M : typeof M
>C2 : typeof M.C2
var n = new N.D1(); // no error
>n : N.D1
>new N.D1() : N.D1
>N.D1 : typeof N.D1
>N : typeof N
>D1 : typeof N.D1
var n2 = new N.D2<number>(); // error
>n2 : N.D2<number>
>new N.D2<number>() : N.D2<number>
>N.D2 : typeof N.D2
>N : typeof N
>D2 : typeof N.D2
var n3 = new N.D2(); // no error, D2<any>
>n3 : N.D2<{}>
>new N.D2() : N.D2<{}>
>N.D2 : typeof N.D2
>N : typeof N
>D2 : typeof N.D2
|