Skip to content

Fix constructed generic coalescing - #2740

Merged
DavidObando merged 1 commit into
mainfrom
fix/2735-null-coalescing-generics
Jul 22, 2026
Merged

Fix constructed generic coalescing#2740
DavidObando merged 1 commit into
mainfrom
fix/2735-null-coalescing-generics

Conversation

@DavidObando

Copy link
Copy Markdown
Owner

Summary

  • preserve symbolic constructed-generic identity before CLR erasure-based conversion fallbacks
  • emit static generic field references against the real symbolic container instead of <object>
  • add executable Oahu logger proofs for user, framework, and nested arguments plus mismatch negatives

Validation

  • dotnet test test/Core.Tests/Core.Tests.csproj --no-restore (6,688 passed, 1 skipped)
  • dotnet test test/Compiler.Tests/Compiler.Tests.csproj --no-build --no-restore (3,394 passed)

Fixes #2735

Preserve symbolic generic arguments through conversion classification and static field member references. Cover the Oahu logging service shape with runtime and ILVerify proofs for user, framework, and nested arguments plus mismatch diagnostics.

Fixes #2735
@DavidObando
DavidObando merged commit 31ca3b7 into main Jul 22, 2026
10 checks passed
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.

gsc runtime: null coalescing erases user-defined generic arguments to object

1 participant