diff --git a/tests/baselines/reference/controlFlowDestructuringParameters.js b/tests/baselines/reference/controlFlowDestructuringParameters.js new file mode 100644 index 00000000000..66b8e656193 --- /dev/null +++ b/tests/baselines/reference/controlFlowDestructuringParameters.js @@ -0,0 +1,15 @@ +//// [controlFlowDestructuringParameters.ts] +// Repro for #8376 + + +[{ x: 1 }].map( + ({ x }) => x +); + + +//// [controlFlowDestructuringParameters.js] +// Repro for #8376 +[{ x: 1 }].map(function (_a) { + var x = _a.x; + return x; +}); diff --git a/tests/baselines/reference/controlFlowDestructuringParameters.symbols b/tests/baselines/reference/controlFlowDestructuringParameters.symbols new file mode 100644 index 00000000000..668d346b929 --- /dev/null +++ b/tests/baselines/reference/controlFlowDestructuringParameters.symbols @@ -0,0 +1,15 @@ +=== tests/cases/compiler/controlFlowDestructuringParameters.ts === +// Repro for #8376 + + +[{ x: 1 }].map( +>[{ x: 1 }].map : Symbol(Array.map, Decl(lib.d.ts, --, --)) +>x : Symbol(x, Decl(controlFlowDestructuringParameters.ts, 3, 2)) +>map : Symbol(Array.map, Decl(lib.d.ts, --, --)) + + ({ x }) => x +>x : Symbol(x, Decl(controlFlowDestructuringParameters.ts, 4, 4)) +>x : Symbol(x, Decl(controlFlowDestructuringParameters.ts, 4, 4)) + +); + diff --git a/tests/baselines/reference/controlFlowDestructuringParameters.types b/tests/baselines/reference/controlFlowDestructuringParameters.types new file mode 100644 index 00000000000..396852bf37a --- /dev/null +++ b/tests/baselines/reference/controlFlowDestructuringParameters.types @@ -0,0 +1,20 @@ +=== tests/cases/compiler/controlFlowDestructuringParameters.ts === +// Repro for #8376 + + +[{ x: 1 }].map( +>[{ x: 1 }].map( ({ x }) => x) : number[] +>[{ x: 1 }].map : (callbackfn: (value: { x: number; }, index: number, array: { x: number; }[]) => U, thisArg?: any) => U[] +>[{ x: 1 }] : { x: number; }[] +>{ x: 1 } : { x: number; } +>x : number +>1 : number +>map : (callbackfn: (value: { x: number; }, index: number, array: { x: number; }[]) => U, thisArg?: any) => U[] + + ({ x }) => x +>({ x }) => x : ({x}: { x: number; }) => number +>x : number +>x : number + +); + diff --git a/tests/cases/compiler/controlFlowDestructuringParameters.ts b/tests/cases/compiler/controlFlowDestructuringParameters.ts new file mode 100644 index 00000000000..3efcd8c4814 --- /dev/null +++ b/tests/cases/compiler/controlFlowDestructuringParameters.ts @@ -0,0 +1,7 @@ +// Repro for #8376 + +// @strictNullChecks: true + +[{ x: 1 }].map( + ({ x }) => x +);