@@ -22373,7 +22373,7 @@ namespace ts {
22373
22373
!numCallSignatures && !numConstructSignatures && !(apparentFuncType.flags & (TypeFlags.Union | TypeFlags.Never)) && isTypeAssignableTo(funcType, globalFunctionType);
22374
22374
}
22375
22375
22376
- function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode): Signature {
22376
+ function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode, contextFlags?: ContextFlags ): Signature {
22377
22377
if (node.arguments && languageVersion < ScriptTarget.ES5) {
22378
22378
const spreadIndex = getSpreadArgumentIndex(node.arguments);
22379
22379
if (spreadIndex >= 0) {
@@ -22426,7 +22426,7 @@ namespace ts {
22426
22426
return resolveErrorCall(node);
22427
22427
}
22428
22428
22429
- return resolveCall(node, constructSignatures, candidatesOutArray, checkMode);
22429
+ return resolveCall(node, constructSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22430
22430
}
22431
22431
22432
22432
// If expressionType's apparent type is an object type with no construct signatures but
@@ -22435,7 +22435,7 @@ namespace ts {
22435
22435
// operation is Any. It is an error to have a Void this type.
22436
22436
const callSignatures = getSignaturesOfType(expressionType, SignatureKind.Call);
22437
22437
if (callSignatures.length) {
22438
- const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode);
22438
+ const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22439
22439
if (!noImplicitAny) {
22440
22440
if (signature.declaration && !isJSConstructor(signature.declaration) && getReturnTypeOfSignature(signature) !== voidType) {
22441
22441
error(node, Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword);
@@ -22786,7 +22786,7 @@ namespace ts {
22786
22786
case SyntaxKind.CallExpression:
22787
22787
return resolveCallExpression(node, candidatesOutArray, checkMode, contextFlags);
22788
22788
case SyntaxKind.NewExpression:
22789
- return resolveNewExpression(node, candidatesOutArray, checkMode);
22789
+ return resolveNewExpression(node, candidatesOutArray, checkMode, contextFlags );
22790
22790
case SyntaxKind.TaggedTemplateExpression:
22791
22791
return resolveTaggedTemplateExpression(node, candidatesOutArray, checkMode);
22792
22792
case SyntaxKind.Decorator:
0 commit comments