2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/conformance/statements/VariableStatements/recursiveInitializer.ts ===
|
|
|
|
// number unless otherwise specified
|
|
|
|
var n1 = n1++;
|
|
|
|
>n1 : any
|
|
|
|
>n1++ : number
|
|
|
|
>n1 : any
|
|
|
|
|
|
|
|
var n2: number = n2 + n2;
|
|
|
|
>n2 : number
|
|
|
|
>n2 + n2 : number
|
|
|
|
>n2 : number
|
|
|
|
>n2 : number
|
|
|
|
|
|
|
|
var n3 /* any */ = n3 + n3;
|
|
|
|
>n3 : any
|
|
|
|
>n3 + n3 : any
|
|
|
|
>n3 : any
|
|
|
|
>n3 : any
|
|
|
|
|
|
|
|
// string unless otherwise specified
|
|
|
|
var s1 = s1 + '';
|
|
|
|
>s1 : any
|
|
|
|
>s1 + '' : string
|
|
|
|
>s1 : any
|
|
|
|
|
|
|
|
var s2 /* any */ = s2 + s2;
|
|
|
|
>s2 : any
|
|
|
|
>s2 + s2 : any
|
|
|
|
>s2 : any
|
|
|
|
>s2 : any
|
|
|
|
|
|
|
|
var s3 : string = s3 + s3;
|
|
|
|
>s3 : string
|
|
|
|
>s3 + s3 : string
|
|
|
|
>s3 : string
|
|
|
|
>s3 : string
|
|
|
|
|
|
|
|
var s4 = '' + s4;
|
|
|
|
>s4 : any
|
|
|
|
>'' + s4 : string
|
|
|
|
>s4 : any
|
|
|
|
|
|
|
|
// boolean unless otherwise specified
|
|
|
|
var b1 = !b1;
|
|
|
|
>b1 : any
|
|
|
|
>!b1 : boolean
|
|
|
|
>b1 : any
|
|
|
|
|
|
|
|
var b2 = !!b2;
|
|
|
|
>b2 : any
|
|
|
|
>!!b2 : boolean
|
|
|
|
>!b2 : boolean
|
|
|
|
>b2 : any
|
|
|
|
|
|
|
|
var b3 = !b3 || b3; // expected boolean here. actually 'any'
|
|
|
|
>b3 : any
|
|
|
|
>!b3 || b3 : any
|
|
|
|
>!b3 : boolean
|
|
|
|
>b3 : any
|
|
|
|
>b3 : any
|
|
|
|
|
|
|
|
var b4 = (!b4) && b4; // expected boolean here. actually 'any'
|
|
|
|
>b4 : any
|
|
|
|
>(!b4) && b4 : any
|
|
|
|
>(!b4) : boolean
|
|
|
|
>!b4 : boolean
|
|
|
|
>b4 : any
|
|
|
|
>b4 : any
|
|
|
|
|
|
|
|
// (x:string) => any
|
|
|
|
var f = (x: string) => f(x);
|
2014-09-05 22:05:36 +02:00
|
|
|
>f : (x: string) => any
|
2014-08-15 23:33:16 +02:00
|
|
|
>(x: string) => f(x) : (x: string) => any
|
|
|
|
>x : string
|
|
|
|
>f(x) : any
|
2014-09-05 22:05:36 +02:00
|
|
|
>f : (x: string) => any
|
2014-08-15 23:33:16 +02:00
|
|
|
>x : string
|
|
|
|
|