Skip to content

[TS] Execute parameter defaults in declaration order (#372) - #419

Merged
CaelmBleidd merged 2 commits into
neofrom
caelmbleidd/ts-372-parameter-defaults
Oct 10, 2026
Merged

CaelmBleidd merged 2 commits into
neofrom
caelmbleidd/ts-372-parameter-defaults

Conversation

@CaelmBleidd

@CaelmBleidd CaelmBleidd commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

Parameter defaults and destructuring now execute immediately after reading their own argument and before initializing the next parameter. Earlier bindings are available to later defaults, while self/forward temporal-dead-zone accesses raise ReferenceError. Capture scanning includes default initializers; the prologue callback also preserves the lexical receiver introduced by the preceding arrow MR. Closures over uninitialized parameters remain explicitly unsupported.

Validation: fresh typecheck and focused frontend tests (15 passed) on the exact rewritten head. The complete semantic stack at original #425 also passed the frontend build and 622 tests. Rebase preserved the original source tree exactly. Frontend/JSON/model correctness does not establish downstream USVM execution support.

Fixes #372

@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/ts-372-parameter-defaults branch from a915f6e to e0cbb16 Compare October 10, 2026 17:38
@CaelmBleidd
CaelmBleidd changed the base branch from caelmbleidd/ts-383-array-rest to neo October 10, 2026 17:38
@CaelmBleidd
CaelmBleidd merged commit f17f4d8 into neo Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant