Commit 943be84
committed
Interface heritage: parse repeated extends clauses
tsc parses an interface with REPEATED extends clauses
("interface I extends A extends B {}") — the parser accepts them, the
checker reports the duplicate. Mono's single opt('extends', sep(Type,','))
clause rejected the second extends, so the construct only "parsed" by
splitting into garbage statements. many('extends', sep(Type,',')) mirrors
tsc and produces the correct interface-with-heritage tree
(parserInterfaceDeclaration1-4, interfaceThatInheritsFromItself).
Accept-neutral on the corpus (the split path already accepted these),
gates 34/34, corpus parity 401/401, gate:treesitter 96.0%; also a
prerequisite for statement-level ASI (Task #24), which otherwise rejects
these as a mid-line split.1 parent aa15e91 commit 943be84
3 files changed
Lines changed: 6 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments