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 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
=== tests/cases/conformance/statements/forStatements/forStatementsMultipleValidDecl.ts ===
// all expected to be valid
for (var x: number; ;) { }
>x : number
for (var x = 2; ;) { }
>x : number
>2 : 2
for (var x = <number>undefined; ;) { }
>x : number
><number>undefined : number
>undefined : undefined
// new declaration space, making redeclaring x as a string valid
function declSpace() {
>declSpace : () => void
for (var x = 'this is a string'; ;) { }
>x : string
>'this is a string' : "this is a string"
}
interface Point { x: number; y: number; }
>Point : Point
>x : number
>y : number
for (var p: Point; ;) { }
>p : Point
>Point : Point
for (var p = { x: 1, y: 2 }; ;) { }
>p : Point
>{ x: 1, y: 2 } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
>2 : 2
for (var p: Point = { x: 0, y: undefined }; ;) { }
>p : Point
>Point : Point
>{ x: 0, y: undefined } : { x: number; y: undefined; }
>x : number
>0 : 0
>y : undefined
>undefined : undefined
for (var p = { x: 1, y: <number>undefined }; ;) { }
>p : Point
>{ x: 1, y: <number>undefined } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
><number>undefined : number
>undefined : undefined
for (var p: { x: number; y: number; } = { x: 1, y: 2 }; ;) { }
>p : Point
>x : number
>y : number
>{ x: 1, y: 2 } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
>2 : 2
for (var p = <{ x: number; y: number; }>{ x: 0, y: undefined }; ;) { }
>p : Point
><{ x: number; y: number; }>{ x: 0, y: undefined } : { x: number; y: number; }
>x : number
>y : number
>{ x: 0, y: undefined } : { x: number; y: undefined; }
>x : number
>0 : 0
>y : undefined
>undefined : undefined
for (var p: typeof p; ;) { }
>p : Point
>p : Point
for (var fn = function (s: string) { return 42; }; ;) { }
>fn : (s: string) => number
>function (s: string) { return 42; } : (s: string) => number
>s : string
>42 : 42
for (var fn = (s: string) => 3; ;) { }
>fn : (s: string) => number
>(s: string) => 3 : (s: string) => number
>s : string
>3 : 3
for (var fn: (s: string) => number; ;) { }
>fn : (s: string) => number
>s : string
for (var fn: { (s: string): number }; ;) { }
>fn : (s: string) => number
>s : string
for (var fn = <(s: string) => number> null; ;) { }
>fn : (s: string) => number
><(s: string) => number> null : (s: string) => number
>s : string
>null : null
for (var fn: typeof fn; ;) { }
>fn : (s: string) => number
>fn : (s: string) => number
for (var a: string[]; ;) { }
>a : string[]
for (var a = ['a', 'b']; ;) { }
>a : string[]
>['a', 'b'] : string[]
>'a' : "a"
>'b' : "b"
for (var a = <string[]>[]; ;) { }
>a : string[]
><string[]>[] : string[]
>[] : undefined[]
for (var a: string[] = []; ;) { }
>a : string[]
>[] : undefined[]
for (var a = new Array<string>(); ;) { }
>a : string[]
>new Array<string>() : string[]
>Array : ArrayConstructor
for (var a: typeof a; ;) { }
>a : string[]
>a : string[]
|