Skip to content

Conversation

@T-Gro
Copy link
Member

@T-Gro T-Gro commented Jan 17, 2026

Fixes a regression introduced in .NET 9 SDK that caused FSharpPlus curryN-style SRTP patterns to fail with FS0030 (value restriction error).

Root Cause

The FreshenTypar function (added for Interfaces with Abstract Static Members) clears StaticReq to None when refreshing type parameters. However, ApplyDefaults in CheckDeclarations.fs only solved typars where StaticReq <> None, missing SRTP typars that have MayResolveMember constraints but no explicit static requirement set.

Fix

Extended ApplyDefaults to also solve typars that have MayResolveMember constraints, regardless of their StaticReq value.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 17, 2026

❗ Release notes required


✅ Found changes and release notes in following paths:

Change path Release notes path Description
src/Compiler docs/release-notes/.FSharp.Compiler.Service/10.0.200.md

@T-Gro
Copy link
Member Author

T-Gro commented Jan 17, 2026

/run ilverify

@github-actions
Copy link
Contributor

🔧 CLI Command Report

  • Command: /run ilverify
  • Outcome: success

✅ Command succeeded, no changes needed.

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