@@ -22431,7 +22431,7 @@ namespace ts {
22431
22431
!numCallSignatures && !numConstructSignatures && !(apparentFuncType.flags & (TypeFlags.Union | TypeFlags.Never)) && isTypeAssignableTo(funcType, globalFunctionType);
22432
22432
}
22433
22433
22434
- function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode): Signature {
22434
+ function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode, contextFlags?: ContextFlags ): Signature {
22435
22435
if (node.arguments && languageVersion < ScriptTarget.ES5) {
22436
22436
const spreadIndex = getSpreadArgumentIndex(node.arguments);
22437
22437
if (spreadIndex >= 0) {
@@ -22484,7 +22484,7 @@ namespace ts {
22484
22484
return resolveErrorCall(node);
22485
22485
}
22486
22486
22487
- return resolveCall(node, constructSignatures, candidatesOutArray, checkMode);
22487
+ return resolveCall(node, constructSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22488
22488
}
22489
22489
22490
22490
// If expressionType's apparent type is an object type with no construct signatures but
@@ -22493,7 +22493,7 @@ namespace ts {
22493
22493
// operation is Any. It is an error to have a Void this type.
22494
22494
const callSignatures = getSignaturesOfType(expressionType, SignatureKind.Call);
22495
22495
if (callSignatures.length) {
22496
- const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode);
22496
+ const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22497
22497
if (!noImplicitAny) {
22498
22498
if (signature.declaration && !isJSConstructor(signature.declaration) && getReturnTypeOfSignature(signature) !== voidType) {
22499
22499
error(node, Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword);
@@ -22844,7 +22844,7 @@ namespace ts {
22844
22844
case SyntaxKind.CallExpression:
22845
22845
return resolveCallExpression(node, candidatesOutArray, checkMode, contextFlags);
22846
22846
case SyntaxKind.NewExpression:
22847
- return resolveNewExpression(node, candidatesOutArray, checkMode);
22847
+ return resolveNewExpression(node, candidatesOutArray, checkMode, contextFlags );
22848
22848
case SyntaxKind.TaggedTemplateExpression:
22849
22849
return resolveTaggedTemplateExpression(node, candidatesOutArray, checkMode);
22850
22850
case SyntaxKind.Decorator:
0 commit comments