Skip to content

[TS] Copy object spread properties in evaluation order (#369) - #409

Merged
CaelmBleidd merged 2 commits into
neofrom
caelmbleidd/ts-369-object-spread
Oct 10, 2026
Merged

CaelmBleidd merged 2 commits into
neofrom
caelmbleidd/ts-369-object-spread

Conversation

@CaelmBleidd

@CaelmBleidd CaelmBleidd commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

Object spread now lowers to ordered CopyDataProperties operations. It copies own enumerable string and symbol keys, reads each copied value through Get, skips nullish spread sources, and lets later explicit properties override earlier copies. The operation is carried through JSON DTOs, Kotlin model conversion, operand traversal, and handlers. This delivery also includes the getter and selected-call semantics already merged internally through #410.

Validation: fresh typecheck and focused frontend tests (39 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 #369

Fixes #381

@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/ts-389-tagged-templates branch from 35f94c2 to 401125b Compare October 10, 2026 17:30
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/ts-369-object-spread branch from 67aa6c3 to 5fe4f85 Compare October 10, 2026 17:30
@CaelmBleidd
CaelmBleidd changed the base branch from caelmbleidd/ts-389-tagged-templates to neo October 10, 2026 17:30
@CaelmBleidd
CaelmBleidd merged commit e872c44 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