microsoft / microsoft/TypeScript
Uncalled Function Checks don't check negative condition
Open
Nobody has claimed this yet.
Awaiting More Feedback
Suggestion
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.3k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 132
Description
function foo() {
}
if (!foo) {
let x = 10
}
else {
}
Expected: Error on !foo that the condition is always true because foo is defined.
Actual: No error.
Also, any work on this should include the following test:
function foo() {
}
if (!foo) {
}
else {
foo()
}
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
Start with TypeScript's uncalled-function checks and reproduce the issue using the provided snippets. Add coverage for both the negative condition and the supplied else branch, and consider it done when the !foo condition is reported as always true.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 38/100