-
Notifications
You must be signed in to change notification settings - Fork 13.1k
Closed
Labels
BugA bug in TypeScriptA bug in TypeScriptFix AvailableA PR has been opened for this issueA PR has been opened for this issue
Milestone
Description
Bug Report
A setter can have an argument with a self-referential annotation, and this argument will implicitly have type any, with TS producing no errors for it.
🔎 Search Terms
setter, implicit any
🕗 Version & Regression Information
As far back as 4.3 (when we first let setters/getters in type literals).
⏯ Playground Link
Playground link with relevant code
💻 Code
declare var y: {
set prop2(arg: typeof y.prop2);
};🙁 Actual behavior
We don't get any errors, even with noImplicitAny set.
But arg has implicitly type any, because its type annotation refers to the type of the setter itself, and there are no getters.
🙂 Expected behavior
An error on prop2 or arg, at least under noImplicitAny.
Metadata
Metadata
Assignees
Labels
BugA bug in TypeScriptA bug in TypeScriptFix AvailableA PR has been opened for this issueA PR has been opened for this issue