-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed
Labels
ASTPRs and Issues about the AST structurePRs and Issues about the AST structureaccepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuebugSomething isn't workingSomething isn't workinglocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.package: typescript-estreeIssues related to @typescript-eslint/typescript-estreeIssues related to @typescript-eslint/typescript-estree
Description
Before You File a Bug Report Please Confirm You Have Done The Following...
- I have tried restarting my IDE and the issue persists.
- I have updated to the latest version of the packages.
- I have searched for related issues and found none that matched my issue.
- I have read the FAQ and my problem is not listed.
Relevant Package
typescript-estree
Playground Link
Repro Code
class E1 {}
class E2 {}
// class X2 extends E1 extends E2 {} // This is reported
interface Y2 extends E1 extends E2 {} // This is NOT reported
ESLint Config
tsconfig
Expected Result
Parser should report internal error TS1172: 'extends' clause already seen.
like TS does.
Actual Result
No errors are reported.
Additional Info
Since duplicate extends
are reported correctly for class
, they should be reported for interface
too?
typescript-eslint/packages/typescript-estree/src/convert.ts
Lines 2043 to 2049 in 7f32763
if (token === SyntaxKind.ExtendsKeyword) { | |
if (extendsClause) { | |
this.#throwUnlessAllowInvalidAST( | |
heritageClause, | |
"'extends' clause already seen.", | |
); | |
} |
I can send a PR if this is acceptable change.
Versions
package | version |
---|---|
@typescript-eslint/typescript-estree |
8.30.1 |
Metadata
Metadata
Assignees
Labels
ASTPRs and Issues about the AST structurePRs and Issues about the AST structureaccepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuebugSomething isn't workingSomething isn't workinglocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.package: typescript-estreeIssues related to @typescript-eslint/typescript-estreeIssues related to @typescript-eslint/typescript-estree