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 55 56 57 58 59 60 61 62 63 64 65 66 67
|
=== tests/cases/compiler/m7Bugs.ts ===
// scenario 1
interface ISomething {
>ISomething : ISomething
something: number;
>something : number
}
var s: ISomething = <ISomething>({ });
>s : ISomething
>ISomething : ISomething
><ISomething>({ }) : ISomething
>ISomething : ISomething
>({ }) : {}
>{ } : {}
// scenario 2
interface A { x: string; }
>A : A
>x : string
interface B extends A { }
>B : B
>A : A
var x: B = <B>{ };
>x : B
>B : B
><B>{ } : B
>B : B
>{ } : {}
class C1 {
>C1 : C1
public x: string;
>x : string
}
class C2 extends C1 {}
>C2 : C2
>C1 : C1
var y1: C1 = new C2();
>y1 : C1
>C1 : C1
>new C2() : C2
>C2 : typeof C2
var y2: C1 = <C1> new C2();
>y2 : C1
>C1 : C1
><C1> new C2() : C1
>C1 : C1
>new C2() : C2
>C2 : typeof C2
var y3: C1 = <C1> {};
>y3 : C1
>C1 : C1
><C1> {} : C1
>C1 : C1
>{} : {}
|