mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-06-11 20:37:46 -05:00
Report more "No overload matches this call" errors on call target nodes (#54447)
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
e9737b893c
commit
24166a4ed8
@@ -33944,6 +33944,19 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
|
||||
}
|
||||
}
|
||||
|
||||
function getErrorNodeForCallNode(callLike: CallLikeExpression): Node {
|
||||
if (isCallOrNewExpression(callLike)) {
|
||||
return isPropertyAccessExpression(callLike.expression) ? callLike.expression.name : callLike.expression;
|
||||
}
|
||||
if (isTaggedTemplateExpression(callLike)) {
|
||||
return isPropertyAccessExpression(callLike.tag) ? callLike.tag.name : callLike.tag;
|
||||
}
|
||||
if (isJsxOpeningLikeElement(callLike)) {
|
||||
return callLike.tagName;
|
||||
}
|
||||
return callLike;
|
||||
}
|
||||
|
||||
function isPromiseResolveArityError(node: CallLikeExpression) {
|
||||
if (!isCallExpression(node) || !isIdentifier(node.expression)) return false;
|
||||
|
||||
@@ -34267,7 +34280,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
|
||||
diag = { file, start, length, code: chain.code, category: chain.category, messageText: chain, relatedInformation: related };
|
||||
}
|
||||
else {
|
||||
diag = createDiagnosticForNodeFromMessageChain(getSourceFileOfNode(node), node, chain, related);
|
||||
diag = createDiagnosticForNodeFromMessageChain(getSourceFileOfNode(node), getErrorNodeForCallNode(node), chain, related);
|
||||
}
|
||||
addImplementationSuccessElaboration(candidatesForArgumentError[0], diag);
|
||||
diagnostics.add(diag);
|
||||
|
||||
Reference in New Issue
Block a user