@@ -22367,7 +22367,7 @@ namespace ts {
22367
22367
!numCallSignatures && !numConstructSignatures && !(apparentFuncType.flags & (TypeFlags.Union | TypeFlags.Never)) && isTypeAssignableTo(funcType, globalFunctionType);
22368
22368
}
22369
22369
22370
- function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode): Signature {
22370
+ function resolveNewExpression(node: NewExpression, candidatesOutArray: Signature[] | undefined, checkMode: CheckMode, contextFlags?: ContextFlags ): Signature {
22371
22371
if (node.arguments && languageVersion < ScriptTarget.ES5) {
22372
22372
const spreadIndex = getSpreadArgumentIndex(node.arguments);
22373
22373
if (spreadIndex >= 0) {
@@ -22420,7 +22420,7 @@ namespace ts {
22420
22420
return resolveErrorCall(node);
22421
22421
}
22422
22422
22423
- return resolveCall(node, constructSignatures, candidatesOutArray, checkMode);
22423
+ return resolveCall(node, constructSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22424
22424
}
22425
22425
22426
22426
// If expressionType's apparent type is an object type with no construct signatures but
@@ -22429,7 +22429,7 @@ namespace ts {
22429
22429
// operation is Any. It is an error to have a Void this type.
22430
22430
const callSignatures = getSignaturesOfType(expressionType, SignatureKind.Call);
22431
22431
if (callSignatures.length) {
22432
- const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode);
22432
+ const signature = resolveCall(node, callSignatures, candidatesOutArray, checkMode, /*fallbackError*/ undefined, contextFlags );
22433
22433
if (!noImplicitAny) {
22434
22434
if (signature.declaration && !isJSConstructor(signature.declaration) && getReturnTypeOfSignature(signature) !== voidType) {
22435
22435
error(node, Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword);
@@ -22780,7 +22780,7 @@ namespace ts {
22780
22780
case SyntaxKind.CallExpression:
22781
22781
return resolveCallExpression(node, candidatesOutArray, checkMode, contextFlags);
22782
22782
case SyntaxKind.NewExpression:
22783
- return resolveNewExpression(node, candidatesOutArray, checkMode);
22783
+ return resolveNewExpression(node, candidatesOutArray, checkMode, contextFlags );
22784
22784
case SyntaxKind.TaggedTemplateExpression:
22785
22785
return resolveTaggedTemplateExpression(node, candidatesOutArray, checkMode);
22786
22786
case SyntaxKind.Decorator:
0 commit comments