=== tests/cases/compiler/arrayConcatMap.ts === var x = [].concat([{ a: 1 }], [{ a: 2 }]) >x : any[], Symbol(x, Decl(arrayConcatMap.ts, 0, 3)) >[].concat([{ a: 1 }], [{ a: 2 }]) .map(b => b.a) : any[] >[].concat([{ a: 1 }], [{ a: 2 }]) .map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92)) >[].concat([{ a: 1 }], [{ a: 2 }]) : any[] >[].concat : { (...items: U[]): any[]; (...items: any[]): any[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46)) >[] : undefined[] >concat : { (...items: U[]): any[]; (...items: any[]): any[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46)) >[{ a: 1 }] : { a: number; }[] >{ a: 1 } : { a: number; } >a : number, Symbol(a, Decl(arrayConcatMap.ts, 0, 20)) >1 : number >[{ a: 2 }] : { a: number; }[] >{ a: 2 } : { a: number; } >a : number, Symbol(a, Decl(arrayConcatMap.ts, 0, 32)) >2 : number .map(b => b.a); >map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92)) >b => b.a : (b: any) => any >b : any, Symbol(b, Decl(arrayConcatMap.ts, 1, 15)) >b.a : any >b : any, Symbol(b, Decl(arrayConcatMap.ts, 1, 15)) >a : any