@@ -19681,7 +19681,7 @@ namespace ts {
1968119681 const parameter = signature.parameters[i];
1968219682 if (!getEffectiveTypeAnnotationNode(<ParameterDeclaration>parameter.valueDeclaration)) {
1968319683 const contextualParameterType = getTypeAtPosition(context, i);
19684- const originalContextualParameterType = signature.isContextuallyTyped ? getTypeAtPosition(context.target! , i) : undefined;
19684+ const originalContextualParameterType = signature.isContextuallyTyped && context.target ? getTypeAtPosition(context.target, i) : undefined;
1968519685 assignTypeToParameterAndFixTypeParameters(parameter, contextualParameterType, contextualParameterType === originalContextualParameterType);
1968619686 for (const tp of getFreeTypeParameters(contextualParameterType)) {
1968719687 node.contextualTypeParameters = appendIfUnique(node.contextualTypeParameters, tp);
@@ -19693,7 +19693,7 @@ namespace ts {
1969319693 const parameter = last(signature.parameters);
1969419694 if (isTransientSymbol(parameter) || !getEffectiveTypeAnnotationNode(<ParameterDeclaration>parameter.valueDeclaration)) {
1969519695 const contextualParameterType = getTypeOfSymbol(last(context.parameters));
19696- const originalContextualParameterType = signature.isContextuallyTyped ? getTypeOfSymbol(last(context.target! .parameters)) : undefined;
19696+ const originalContextualParameterType = signature.isContextuallyTyped && context.target ? getTypeOfSymbol(last(context.target.parameters)) : undefined;
1969719697 assignTypeToParameterAndFixTypeParameters(parameter, contextualParameterType, contextualParameterType === originalContextualParameterType);
1969819698 for (const tp of getFreeTypeParameters(contextualParameterType)) {
1969919699 node.contextualTypeParameters = appendIfUnique(node.contextualTypeParameters, tp);
0 commit comments