Skip to content

Commit e9cb12a

Browse files
author
Paul van Brenk
committed
Add diagnostics for signaturehelp crash
1 parent cbeea38 commit e9cb12a

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

src/services/signatureHelp.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,12 +264,16 @@ module ts.SignatureHelp {
264264
// the comma. That amounts to taking the ceiling of half the index.
265265
var argumentIndex = (listItemInfo.listItemIndex + 1) >> 1;
266266

267+
var argumentCount = getCommaBasedArgCount(list);
268+
269+
Debug.assert(argumentIndex < argumentCount, `argumentCount < argumentIndex, ${argumentCount} < ${argumentIndex}`);
270+
267271
return {
268272
kind: isTypeArgList ? ArgumentListKind.TypeArguments : ArgumentListKind.CallArguments,
269273
invocation: callExpression,
270274
argumentsSpan: getApplicableSpanForArguments(list),
271275
argumentIndex: argumentIndex,
272-
argumentCount: getCommaBasedArgCount(list)
276+
argumentCount: argumentCount
273277
};
274278
}
275279
}
@@ -347,6 +351,8 @@ module ts.SignatureHelp {
347351
? 1
348352
: (<TemplateExpression>tagExpression.template).templateSpans.length + 1;
349353

354+
Debug.assert(argumentIndex < argumentCount, `argumentCount < argumentIndex, ${argumentCount} < ${argumentIndex}`);
355+
350356
return {
351357
kind: ArgumentListKind.TaggedTemplateArguments,
352358
invocation: tagExpression,
@@ -512,6 +518,8 @@ module ts.SignatureHelp {
512518
selectedItemIndex = selectBestInvalidOverloadIndex(candidates, argumentCount);
513519
}
514520

521+
Debug.assert(argumentIndex < argumentCount, `argumentCount < argumentIndex, ${argumentCount} < ${argumentIndex}`);
522+
515523
return {
516524
items,
517525
applicableSpan,

0 commit comments

Comments
 (0)