Microsoft/TypeScript
Voir sur GitHubTS2302 when using two generics with the same name in JSDoc, but not in TypeScript.
Open
#47 425 ouverte le 13 janv. 2022
BugDomain: JSDocHelp Wanted
Métriques du dépôt
- Stars
- (48 455 stars)
- Métriques de merge PR
- (Merge moyen 6j 17h) (9 PRs mergées en 30 j)
Description
Bug Report
🔎 Search Terms
ts2302 jsdoc
🕗 Version & Regression Information
- This changed between versions
4.4.4and4.5.4
⏯ Playground Link
Playground link with relevant code
💻 Code
/**
* @template T1
* @typedef {T1} TakesT1
*/
/**
* @template T1
* @template T2
*/
class Foo {
/**
* @template T1
* @template {TakesT1<T1>} T2
* ^^--- Static members cannot reference
* class type parameters.(2302)
* @param {T1} t1
* @param {T2} t2
*/
static bar(t1, t2) {
}
}
🙁 Actual behavior
"Static members cannot reference class type parameters." This is wrong because the equivalent typescript for this situation does not give an error: playground.
🙂 Expected behavior
No ts2302 error, TakesT1<T1> should use the T1 generic from the static bar() method, rather than from the Foo class.