microsoft / microsoft/TypeScript
"An argument for 'param' was not provided." should use types to guess most likely missing parameter
Open
Nobody has claimed this yet.
Domain: Error Messages
In Discussion
Suggestion
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.3k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 132
Description
TypeScript Version: 3.2.0-dev.20181009
Code
function f(n: number, s: string) {}
f("");
Expected behavior:
An argument for 'n' was not provided.
Actual behavior:
src/a.ts:2:1 - error TS2554: Expected 2 arguments, but got 1.
2 f("");
~~~~~
src/a.ts:1:23
1 function f(n: number, s: string) {}
~~~~~~~~~
An argument for 's' was not provided.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the diagnostic with the provided TypeScript function and call example, then trace the argument-count error and how parameter types are considered when choosing the reported missing parameter. Done means the example reports that the argument for 'n' was not provided instead of 's'.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100