2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/conformance/expressions/binaryOperators/additionOperator/additionOperatorWithAnyAndEveryType.ts ===
|
|
|
|
function foo() { }
|
2015-04-13 23:01:57 +02:00
|
|
|
>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
class C {
|
2015-04-13 23:01:57 +02:00
|
|
|
>C : C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
public a: string;
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 1, 9))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
static foo() { }
|
2015-04-13 23:01:57 +02:00
|
|
|
>foo : () => void, Symbol(C.foo, Decl(additionOperatorWithAnyAndEveryType.ts, 2, 21))
|
2014-08-15 23:33:16 +02:00
|
|
|
}
|
|
|
|
enum E { a, b, c }
|
2015-04-13 23:01:57 +02:00
|
|
|
>E : E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
|
|
|
|
>a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
|
|
|
|
>b : E, Symbol(E.b, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 11))
|
|
|
|
>c : E, Symbol(E.c, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 14))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
module M { export var a }
|
2015-04-13 23:01:57 +02:00
|
|
|
>M : typeof M, Symbol(M, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 18))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 6, 21))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var a: any;
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var b: boolean;
|
2015-04-13 23:01:57 +02:00
|
|
|
>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var c: number;
|
2015-04-13 23:01:57 +02:00
|
|
|
>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var d: string;
|
2015-04-13 23:01:57 +02:00
|
|
|
>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var e: Object;
|
2015-04-13 23:01:57 +02:00
|
|
|
>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
|
|
|
|
>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
// any as left operand, result is type Any except plusing string
|
|
|
|
var r1 = a + a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r1 : any, Symbol(r1, Decl(additionOperatorWithAnyAndEveryType.ts, 15, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + a : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r2 = a + b;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r2 : any, Symbol(r2, Decl(additionOperatorWithAnyAndEveryType.ts, 16, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + b : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r3 = a + c;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r3 : any, Symbol(r3, Decl(additionOperatorWithAnyAndEveryType.ts, 17, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + c : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r4 = a + d;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r4 : string, Symbol(r4, Decl(additionOperatorWithAnyAndEveryType.ts, 18, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + d : string
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r5 = a + e;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r5 : any, Symbol(r5, Decl(additionOperatorWithAnyAndEveryType.ts, 19, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + e : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
// any as right operand, result is type Any except plusing string
|
|
|
|
var r6 = b + a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r6 : any, Symbol(r6, Decl(additionOperatorWithAnyAndEveryType.ts, 22, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>b + a : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r7 = c + a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r7 : any, Symbol(r7, Decl(additionOperatorWithAnyAndEveryType.ts, 23, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>c + a : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r8 = d + a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r8 : string, Symbol(r8, Decl(additionOperatorWithAnyAndEveryType.ts, 24, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>d + a : string
|
2015-04-13 23:01:57 +02:00
|
|
|
>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r9 = e + a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r9 : any, Symbol(r9, Decl(additionOperatorWithAnyAndEveryType.ts, 25, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>e + a : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
|
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
// other cases
|
|
|
|
var r10 = a + foo;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r10 : any, Symbol(r10, Decl(additionOperatorWithAnyAndEveryType.ts, 28, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + foo : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r11 = a + foo();
|
2015-04-13 23:01:57 +02:00
|
|
|
>r11 : any, Symbol(r11, Decl(additionOperatorWithAnyAndEveryType.ts, 29, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + foo() : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>foo() : void
|
2015-04-13 23:01:57 +02:00
|
|
|
>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r12 = a + C;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r12 : any, Symbol(r12, Decl(additionOperatorWithAnyAndEveryType.ts, 30, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + C : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>C : typeof C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r13 = a + new C();
|
2015-04-13 23:01:57 +02:00
|
|
|
>r13 : any, Symbol(r13, Decl(additionOperatorWithAnyAndEveryType.ts, 31, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + new C() : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>new C() : C
|
2015-04-13 23:01:57 +02:00
|
|
|
>C : typeof C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r14 = a + E;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r14 : any, Symbol(r14, Decl(additionOperatorWithAnyAndEveryType.ts, 32, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + E : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>E : typeof E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r15 = a + E.a;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r15 : any, Symbol(r15, Decl(additionOperatorWithAnyAndEveryType.ts, 33, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + E.a : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>E.a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
|
|
|
|
>E : typeof E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
|
|
|
|
>a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r16 = a + M;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r16 : any, Symbol(r16, Decl(additionOperatorWithAnyAndEveryType.ts, 34, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + M : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
|
|
|
>M : typeof M, Symbol(M, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 18))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r17 = a + '';
|
2015-04-13 23:01:57 +02:00
|
|
|
>r17 : string, Symbol(r17, Decl(additionOperatorWithAnyAndEveryType.ts, 35, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + '' : string
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2015-04-13 21:36:11 +02:00
|
|
|
>'' : string
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r18 = a + 123;
|
2015-04-13 23:01:57 +02:00
|
|
|
>r18 : any, Symbol(r18, Decl(additionOperatorWithAnyAndEveryType.ts, 36, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + 123 : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2015-04-13 21:36:11 +02:00
|
|
|
>123 : number
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r19 = a + { a: '' };
|
2015-04-13 23:01:57 +02:00
|
|
|
>r19 : any, Symbol(r19, Decl(additionOperatorWithAnyAndEveryType.ts, 37, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + { a: '' } : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>{ a: '' } : { a: string; }
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 37, 15))
|
2015-04-13 21:36:11 +02:00
|
|
|
>'' : string
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
var r20 = a + ((a: string) => { return a });
|
2015-04-13 23:01:57 +02:00
|
|
|
>r20 : any, Symbol(r20, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>a + ((a: string) => { return a }) : any
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
|
2014-08-15 23:33:16 +02:00
|
|
|
>((a: string) => { return a }) : (a: string) => string
|
|
|
|
>(a: string) => { return a } : (a: string) => string
|
2015-04-13 23:01:57 +02:00
|
|
|
>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 16))
|
|
|
|
>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 16))
|
2014-08-15 23:33:16 +02:00
|
|
|
|