85 lines
3.3 KiB
Plaintext
85 lines
3.3 KiB
Plaintext
=== tests/cases/conformance/types/typeRelationships/bestCommonType/bestCommonTypeOfTuple.ts ===
|
|
function f1(x: number): string { return "foo"; }
|
|
>f1 : Symbol(f1, Decl(bestCommonTypeOfTuple.ts, 0, 0))
|
|
>x : Symbol(x, Decl(bestCommonTypeOfTuple.ts, 0, 12))
|
|
|
|
function f2(x: number): number { return 10; }
|
|
>f2 : Symbol(f2, Decl(bestCommonTypeOfTuple.ts, 0, 48))
|
|
>x : Symbol(x, Decl(bestCommonTypeOfTuple.ts, 2, 12))
|
|
|
|
function f3(x: number): boolean { return true; }
|
|
>f3 : Symbol(f3, Decl(bestCommonTypeOfTuple.ts, 2, 45))
|
|
>x : Symbol(x, Decl(bestCommonTypeOfTuple.ts, 4, 12))
|
|
|
|
enum E1 { one }
|
|
>E1 : Symbol(E1, Decl(bestCommonTypeOfTuple.ts, 4, 48))
|
|
>one : Symbol(E1.one, Decl(bestCommonTypeOfTuple.ts, 6, 9))
|
|
|
|
enum E2 { two }
|
|
>E2 : Symbol(E2, Decl(bestCommonTypeOfTuple.ts, 6, 15))
|
|
>two : Symbol(E2.two, Decl(bestCommonTypeOfTuple.ts, 8, 9))
|
|
|
|
|
|
var t1: [(x: number) => string, (x: number) => number];
|
|
>t1 : Symbol(t1, Decl(bestCommonTypeOfTuple.ts, 11, 3))
|
|
>x : Symbol(x, Decl(bestCommonTypeOfTuple.ts, 11, 10))
|
|
>x : Symbol(x, Decl(bestCommonTypeOfTuple.ts, 11, 33))
|
|
|
|
var t2: [E1, E2];
|
|
>t2 : Symbol(t2, Decl(bestCommonTypeOfTuple.ts, 12, 3))
|
|
>E1 : Symbol(E1, Decl(bestCommonTypeOfTuple.ts, 4, 48))
|
|
>E2 : Symbol(E2, Decl(bestCommonTypeOfTuple.ts, 6, 15))
|
|
|
|
var t3: [number, any];
|
|
>t3 : Symbol(t3, Decl(bestCommonTypeOfTuple.ts, 13, 3))
|
|
|
|
var t4: [E1, E2, number];
|
|
>t4 : Symbol(t4, Decl(bestCommonTypeOfTuple.ts, 14, 3))
|
|
>E1 : Symbol(E1, Decl(bestCommonTypeOfTuple.ts, 4, 48))
|
|
>E2 : Symbol(E2, Decl(bestCommonTypeOfTuple.ts, 6, 15))
|
|
|
|
// no error
|
|
t1 = [f1, f2];
|
|
>t1 : Symbol(t1, Decl(bestCommonTypeOfTuple.ts, 11, 3))
|
|
>f1 : Symbol(f1, Decl(bestCommonTypeOfTuple.ts, 0, 0))
|
|
>f2 : Symbol(f2, Decl(bestCommonTypeOfTuple.ts, 0, 48))
|
|
|
|
t2 = [E1.one, E2.two];
|
|
>t2 : Symbol(t2, Decl(bestCommonTypeOfTuple.ts, 12, 3))
|
|
>E1.one : Symbol(E1.one, Decl(bestCommonTypeOfTuple.ts, 6, 9))
|
|
>E1 : Symbol(E1, Decl(bestCommonTypeOfTuple.ts, 4, 48))
|
|
>one : Symbol(E1.one, Decl(bestCommonTypeOfTuple.ts, 6, 9))
|
|
>E2.two : Symbol(E2.two, Decl(bestCommonTypeOfTuple.ts, 8, 9))
|
|
>E2 : Symbol(E2, Decl(bestCommonTypeOfTuple.ts, 6, 15))
|
|
>two : Symbol(E2.two, Decl(bestCommonTypeOfTuple.ts, 8, 9))
|
|
|
|
t3 = [5, undefined];
|
|
>t3 : Symbol(t3, Decl(bestCommonTypeOfTuple.ts, 13, 3))
|
|
>undefined : Symbol(undefined)
|
|
|
|
t4 = [E1.one, E2.two, 20];
|
|
>t4 : Symbol(t4, Decl(bestCommonTypeOfTuple.ts, 14, 3))
|
|
>E1.one : Symbol(E1.one, Decl(bestCommonTypeOfTuple.ts, 6, 9))
|
|
>E1 : Symbol(E1, Decl(bestCommonTypeOfTuple.ts, 4, 48))
|
|
>one : Symbol(E1.one, Decl(bestCommonTypeOfTuple.ts, 6, 9))
|
|
>E2.two : Symbol(E2.two, Decl(bestCommonTypeOfTuple.ts, 8, 9))
|
|
>E2 : Symbol(E2, Decl(bestCommonTypeOfTuple.ts, 6, 15))
|
|
>two : Symbol(E2.two, Decl(bestCommonTypeOfTuple.ts, 8, 9))
|
|
|
|
var e1 = t1[2]; // {}
|
|
>e1 : Symbol(e1, Decl(bestCommonTypeOfTuple.ts, 21, 3))
|
|
>t1 : Symbol(t1, Decl(bestCommonTypeOfTuple.ts, 11, 3))
|
|
|
|
var e2 = t2[2]; // {}
|
|
>e2 : Symbol(e2, Decl(bestCommonTypeOfTuple.ts, 22, 3))
|
|
>t2 : Symbol(t2, Decl(bestCommonTypeOfTuple.ts, 12, 3))
|
|
|
|
var e3 = t3[2]; // any
|
|
>e3 : Symbol(e3, Decl(bestCommonTypeOfTuple.ts, 23, 3))
|
|
>t3 : Symbol(t3, Decl(bestCommonTypeOfTuple.ts, 13, 3))
|
|
|
|
var e4 = t4[3]; // number
|
|
>e4 : Symbol(e4, Decl(bestCommonTypeOfTuple.ts, 24, 3))
|
|
>t4 : Symbol(t4, Decl(bestCommonTypeOfTuple.ts, 14, 3))
|
|
|