Skip to content

WIP - another take at resumable state-machine lowering in Debug - #20498

Draft
T-Gro wants to merge 6 commits into
dotnet:mainfrom
T-Gro:t-gro-resumable-inlining-ci
Draft

WIP - another take at resumable state-machine lowering in Debug#20498
T-Gro wants to merge 6 commits into
dotnet:mainfrom
T-Gro:t-gro-resumable-inlining-ci

Conversation

@T-Gro

@T-Gro T-Gro commented Sep 9, 2026

Copy link
Copy Markdown
Member

This draft is to run CI on the proposed additions to @majocha's #20469. If CI passes, let's merge these changes into #20469 rather than merge this draft separately.

majocha and others added 6 commits September 6, 2026 22:53
Keep resumable producers and template-hosting bodies on the compulsory inlining path. Avoid extracting Debug specializations involving state-machine templates: the generated struct can carry captured type parameters that the helper cannot preserve. Retain ordinary Debug calls, add runtime and cross-assembly regressions, and update affected IL expectations.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Use withOptimization instead of rebuilding compiler flags. Parameterize the captured-state-machine regression over Debug and optimized compilation without duplicating its source or adding lines.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Restore full lowered Test fixtures instead of MoveNext-only fragments, preserving factory, state, accessor and helper checks. Keep source programs and compiler options unchanged. Clarify that the renamed mandatory-inlining cache retains frame-local behavior as well as resumable templates.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

❗ Release notes required

You can open this PR in browser to add release notes: open in github.dev


✅ Found changes and release notes in following paths:

Warning

No PR link found in some release notes, please consider adding it.

Change path Release notes path Description
`src/Compiler` docs/release-notes/.FSharp.Compiler.Service/11.0.100.md No current pull request URL (#20498) found, please consider adding it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: New

Development

Successfully merging this pull request may close these issues.

2 participants