TypeScript/tests/baselines/reference/forStatementsMultipleValidDecl.types

141 lines
12 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/conformance/statements/forStatements/forStatementsMultipleValidDecl.ts ===
// all expected to be valid
for (var x: number; ;) { }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 2, 8), Decl(forStatementsMultipleValidDecl.ts, 3, 8), Decl(forStatementsMultipleValidDecl.ts, 5, 8))
2014-08-15 23:33:16 +02:00
for (var x = 2; ;) { }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 2, 8), Decl(forStatementsMultipleValidDecl.ts, 3, 8), Decl(forStatementsMultipleValidDecl.ts, 5, 8))
2015-04-13 21:36:11 +02:00
>2 : number
2014-08-15 23:33:16 +02:00
for (var x = <number>undefined; ;) { }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 2, 8), Decl(forStatementsMultipleValidDecl.ts, 3, 8), Decl(forStatementsMultipleValidDecl.ts, 5, 8))
2014-08-15 23:33:16 +02:00
><number>undefined : number
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
// new declaration space, making redeclaring x as a string valid
function declSpace() {
2015-04-13 23:01:57 +02:00
>declSpace : () => void, Symbol(declSpace, Decl(forStatementsMultipleValidDecl.ts, 5, 38))
2014-08-15 23:33:16 +02:00
for (var x = 'this is a string'; ;) { }
2015-04-13 23:01:57 +02:00
>x : string, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 8, 12))
2015-04-13 21:36:11 +02:00
>'this is a string' : string
2014-08-15 23:33:16 +02:00
}
interface Point { x: number; y: number; }
2015-04-13 23:01:57 +02:00
>Point : Point, Symbol(Point, Decl(forStatementsMultipleValidDecl.ts, 9, 1))
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 10, 17))
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 10, 28))
2014-08-15 23:33:16 +02:00
for (var p: Point; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
>Point : Point, Symbol(Point, Decl(forStatementsMultipleValidDecl.ts, 9, 1))
2014-08-15 23:33:16 +02:00
for (var p = { x: 1, y: 2 }; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
2014-08-15 23:33:16 +02:00
>{ x: 1, y: 2 } : { x: number; y: number; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 13, 14))
2015-04-13 21:36:11 +02:00
>1 : number
2015-04-13 23:01:57 +02:00
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 13, 20))
2015-04-13 21:36:11 +02:00
>2 : number
2014-08-15 23:33:16 +02:00
for (var p: Point = { x: 0, y: undefined }; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
>Point : Point, Symbol(Point, Decl(forStatementsMultipleValidDecl.ts, 9, 1))
2014-08-15 23:33:16 +02:00
>{ x: 0, y: undefined } : { x: number; y: undefined; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 14, 21))
2015-04-13 21:36:11 +02:00
>0 : number
2015-04-13 23:01:57 +02:00
>y : undefined, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 14, 27))
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
for (var p = { x: 1, y: <number>undefined }; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
2014-08-15 23:33:16 +02:00
>{ x: 1, y: <number>undefined } : { x: number; y: number; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 15, 14))
2015-04-13 21:36:11 +02:00
>1 : number
2015-04-13 23:01:57 +02:00
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 15, 20))
2014-08-15 23:33:16 +02:00
><number>undefined : number
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
for (var p: { x: number; y: number; } = { x: 1, y: 2 }; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 16, 13))
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 16, 24))
2014-08-15 23:33:16 +02:00
>{ x: 1, y: 2 } : { x: number; y: number; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 16, 41))
2015-04-13 21:36:11 +02:00
>1 : number
2015-04-13 23:01:57 +02:00
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 16, 47))
2015-04-13 21:36:11 +02:00
>2 : number
2014-08-15 23:33:16 +02:00
for (var p = <{ x: number; y: number; }>{ x: 0, y: undefined }; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
2014-08-15 23:33:16 +02:00
><{ x: number; y: number; }>{ x: 0, y: undefined } : { x: number; y: number; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 17, 15))
>y : number, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 17, 26))
2014-08-15 23:33:16 +02:00
>{ x: 0, y: undefined } : { x: number; y: undefined; }
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(forStatementsMultipleValidDecl.ts, 17, 41))
2015-04-13 21:36:11 +02:00
>0 : number
2015-04-13 23:01:57 +02:00
>y : undefined, Symbol(y, Decl(forStatementsMultipleValidDecl.ts, 17, 47))
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
for (var p: typeof p; ;) { }
2015-04-13 23:01:57 +02:00
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
>p : Point, Symbol(p, Decl(forStatementsMultipleValidDecl.ts, 12, 8), Decl(forStatementsMultipleValidDecl.ts, 13, 8), Decl(forStatementsMultipleValidDecl.ts, 14, 8), Decl(forStatementsMultipleValidDecl.ts, 15, 8), Decl(forStatementsMultipleValidDecl.ts, 16, 8), Decl(forStatementsMultipleValidDecl.ts, 17, 8), Decl(forStatementsMultipleValidDecl.ts, 18, 8))
2014-08-15 23:33:16 +02:00
for (var fn = function (s: string) { return 42; }; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
2014-08-15 23:33:16 +02:00
>function (s: string) { return 42; } : (s: string) => number
2015-04-13 23:01:57 +02:00
>s : string, Symbol(s, Decl(forStatementsMultipleValidDecl.ts, 20, 24))
2015-04-13 21:36:11 +02:00
>42 : number
2014-08-15 23:33:16 +02:00
for (var fn = (s: string) => 3; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
2014-08-15 23:33:16 +02:00
>(s: string) => 3 : (s: string) => number
2015-04-13 23:01:57 +02:00
>s : string, Symbol(s, Decl(forStatementsMultipleValidDecl.ts, 21, 15))
2015-04-13 21:36:11 +02:00
>3 : number
2014-08-15 23:33:16 +02:00
for (var fn: (s: string) => number; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
>s : string, Symbol(s, Decl(forStatementsMultipleValidDecl.ts, 22, 14))
2014-08-15 23:33:16 +02:00
for (var fn: { (s: string): number }; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
>s : string, Symbol(s, Decl(forStatementsMultipleValidDecl.ts, 23, 16))
2014-08-15 23:33:16 +02:00
for (var fn = <(s: string) => number> null; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
2014-08-15 23:33:16 +02:00
><(s: string) => number> null : (s: string) => number
2015-04-13 23:01:57 +02:00
>s : string, Symbol(s, Decl(forStatementsMultipleValidDecl.ts, 24, 16))
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
for (var fn: typeof fn; ;) { }
2015-04-13 23:01:57 +02:00
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
>fn : (s: string) => number, Symbol(fn, Decl(forStatementsMultipleValidDecl.ts, 20, 8), Decl(forStatementsMultipleValidDecl.ts, 21, 8), Decl(forStatementsMultipleValidDecl.ts, 22, 8), Decl(forStatementsMultipleValidDecl.ts, 23, 8), Decl(forStatementsMultipleValidDecl.ts, 24, 8), Decl(forStatementsMultipleValidDecl.ts, 25, 8))
2014-08-15 23:33:16 +02:00
for (var a: string[]; ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-08-15 23:33:16 +02:00
for (var a = ['a', 'b']; ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-08-15 23:33:16 +02:00
>['a', 'b'] : string[]
2015-04-13 21:36:11 +02:00
>'a' : string
>'b' : string
2014-08-15 23:33:16 +02:00
for (var a = <string[]>[]; ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-08-15 23:33:16 +02:00
><string[]>[] : string[]
2014-10-13 15:56:58 +02:00
>[] : undefined[]
2014-08-15 23:33:16 +02:00
for (var a: string[] = []; ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-10-13 15:56:58 +02:00
>[] : undefined[]
2014-08-15 23:33:16 +02:00
for (var a = new Array<string>(); ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-08-15 23:33:16 +02:00
>new Array<string>() : string[]
2015-04-13 23:01:57 +02:00
>Array : ArrayConstructor, Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11))
2014-08-15 23:33:16 +02:00
for (var a: typeof a; ;) { }
2015-04-13 23:01:57 +02:00
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
>a : string[], Symbol(a, Decl(forStatementsMultipleValidDecl.ts, 27, 8), Decl(forStatementsMultipleValidDecl.ts, 28, 8), Decl(forStatementsMultipleValidDecl.ts, 29, 8), Decl(forStatementsMultipleValidDecl.ts, 30, 8), Decl(forStatementsMultipleValidDecl.ts, 31, 8), Decl(forStatementsMultipleValidDecl.ts, 32, 8))
2014-08-15 23:33:16 +02:00