Skip to content

Forward typed next values, return() and throw() through yield* - #943

Merged
ctate merged 1 commit into
mainfrom
ctate/forward-typed-next-ad38da
Oct 13, 2026
Merged

ctate merged 1 commit into
mainfrom
ctate/forward-typed-next-ad38da

Conversation

@ctate

@ctate ctate commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator
  • Fix the internal compiler error for yield* into generators with typed next channels, and pass return()/throw() on to the delegate as Node does.
  • yield* over generators no longer allocates a result record per element, including delegates with return values: 0.81× main on recursive delegation with return values; bench:runtime neutral.
  • Unsound cases (a started typed delegate, an undefined completion through a typed return) report SC1071 instead of reading invalid values.

@vercel

vercel Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
scriptc Ready Ready Preview, v0 Oct 13, 2026 9:48pm UTC

@ctate
ctate merged commit dfa9ae0 into main Oct 13, 2026
90 checks passed
@ctate
ctate deleted the ctate/forward-typed-next-ad38da branch October 13, 2026 22:14

This branch was successfully deployed

1 active deployment
Preview — 470f2deb Deployed Oct 13, 2026 by vercel[bot]
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