Microsoft/TypeScript
GitHub ã§èŠãTS2302 when using two generics with the same name in JSDoc, but not in TypeScript.
Open
#47,425 opened on 2022幎1æ13æ¥
BugDomain: JSDocHelp Wanted
Repository metrics
- Stars
- Â (48,455 stars)
- PR merge metrics
-  (å¹³åããŒãž 6d 17h) (30d ã§ 9 merged PRs)
説æ
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.