From 75cb7392f372924d7e3969d405b8594dea9cdbe9 Mon Sep 17 00:00:00 2001 From: Gabriela Araujo Britto Date: Tue, 15 Feb 2022 11:23:29 -0800 Subject: [PATCH] pass parameter type to assignBindingElementTypes --- src/compiler/checker.ts | 6 +----- tests/cases/compiler/narrowingRestGenericCall.ts | 1 - 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index e0fd69eab48..59d1e28db88 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -26064,9 +26064,6 @@ namespace ts { const contextualSignature = getContextualSignature(func); if (contextualSignature) { - // const inferenceContext = getInferenceContext(func); // >> Changed here - // const signature = inferenceContext ? - // instantiateSignature(contextualSignature, inferenceContext.mapper) : contextualSignature; const signature = contextualSignature; const index = func.parameters.indexOf(parameter) - (getThisParameter(func) ? 1 : 0); return parameter.dotDotDotToken && lastOrUndefined(func.parameters) === parameter ? @@ -31873,9 +31870,8 @@ namespace ts { function assignBindingElementTypes(pattern: BindingPattern, parentType: Type) { for (const element of pattern.elements) { if (!isOmittedExpression(element)) { - const type = getBindingElementTypeFromParentType(element, parentType); // >> Changed here + const type = getBindingElementTypeFromParentType(element, parentType); if (element.name.kind === SyntaxKind.Identifier) { - // getSymbolLinks(getSymbolOfNode(element)).type = getTypeForBindingElement(element); getSymbolLinks(getSymbolOfNode(element)).type = type; } else { diff --git a/tests/cases/compiler/narrowingRestGenericCall.ts b/tests/cases/compiler/narrowingRestGenericCall.ts index eb3e70580a5..ed74403099e 100644 --- a/tests/cases/compiler/narrowingRestGenericCall.ts +++ b/tests/cases/compiler/narrowingRestGenericCall.ts @@ -10,5 +10,4 @@ function call(obj: T, cb: (val: T) => void) { declare let obj: Slugs; call(obj, ({foo, ...rest}) => { console.log(rest.bar); - // ~~~ Property 'bar' does not exist on type 'Omit'. ts(2339) }); \ No newline at end of file