Microsoft/TypeScript
TS2302 when using two generics with the same name in JSDoc, but not in TypeScript.
Aberta
#47.425 aberto em 13 de jan. de 2022
BugDomain: JSDocHelp Wanted
Métricas do repositório
- Stars
- (108.860 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
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.