- Fix classification of
nameofinnameof<'T>,match … with nameof ident -> …. (Issue #10026, PR #18300) - Fix Realsig+ generates nested closures with incorrect Generic (Issue #17797, PR #17877)
- Fix optimizer internal error for records with static fields (Issue #18165, PR #18280)
- Fix nullness warning with flexible types (Issue #18056, PR #18266)
- Allow first branches of match and if expressions to return nullable results (Issue #18015, PR #18322)
- Fix internal error when missing measure attribute in an unsolved measure typar. (Issue #7491, PR #18234==
- Set
Cancellable.tokenfrom async computation (Issue #18235, PR #18238) - Fix missing nullness warning when static upcast dropped nullness (Issue #18232, PR #18261)
- Cancellable: only cancel on OCE with own token (PR #18277)
- Cancellable: set token in more places (PR #18283)
- Cancellable: fix leaking cancellation token (PR #18295)
- Fix NRE when accessing nullable fields of types within their equals/hash/compare methods (PR #18296)
- Fix nullness warning for overrides of generic code with nullable type instance (Issue #17988, PR #18337)
- Unsafe downcast from
objto genericTno longer requiresnot nullconstraint onT(Issue #18275, PR #18343) - Fix "type inference problem too complicated" for SRTP with T:null and T:struct dummy constraint(Issue #18288, PR #18345)
- Fix for missing parse diagnostics in TransparentCompiler.ParseAndCheckProject (PR #18366)
- Miscellanous parentheses analyzer fixes. (PR #18350)
- Fix duplicate parse error reporting for GetBackgroundCheckResultsForFileInProject (Issue #18379 PR #18380)
- Fix MethodDefNotFound when compiling code invoking delegate with option parameter (Issue #5171, PR #18385)
- Added missing type constraints in FCS. (PR #18241)
- The 'use' keyword can be used on IDisposable|null without nullness warnings (PR #18262)
- Add support for C#
Experimentalattribute. (PR #18253) - Nullness warnings are issued for signature<>implementation conformance (PR #18186)
- Symbols: Add FSharpAssembly.IsFSharp (PR #18290)
- Type parameter constraint
nullin generic code will now automatically implynot struct(Issue #18320, PR #18323)
- FSharpCheckFileResults.ProjectContext.ProjectOptions will not be available when using the experimental Transparent Compiler feature. (PR #18205)
- Update
Obsoleteattribute checking to account forDiagnosticIdandUrlFormatproperties. (PR #18224) - Remove
Cancellable.UsingTokenfrom tests (PR #18276) - Added nullability annotations to
.Usingbuilder method forasync,taskand compiler-internal builders (PR #18292) - Warn when
unitis passed to anobj-typed argument (PR #18330) - Warning for "useless null handling" works with piped syntax constructs now (PR #18331)
- Adjust caller info attribute error message range (PR #18388)
- Struct unions with overlapping fields now generate mappings needed for reading via reflection (Issue #18121, PR #18274)