Skip to content

Update Advanced Compiler Settings documentation for modern .NET #47995

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Aug 23, 2025

Conversation

Copilot
Copy link
Contributor

@Copilot Copilot AI commented Aug 18, 2025

Updates the Advanced C# Compiler Options documentation to accurately reflect modern .NET behavior and current Windows versions.

Changes Made

NoStandardLib Option Updates

  • Clarified library references: Updated documentation to distinguish between .NET Framework projects (which reference mscorlib.dll) and modern .NET projects (.NET 5+, which reference System.Private.CoreLib.dll)
  • Improved accuracy: Changed language from "import" to "automatic reference" to better reflect the actual compiler behavior
  • Enhanced clarity: Both in the summary list and detailed section, now explicitly mentions which library is referenced for each project type

SubsystemVersion Option Updates

  • Added missing Windows versions: Extended the subsystem version table to include:
    • Windows 8.1 (6.03)
    • Windows 10 (6.04)
    • Windows 11 (6.04)
  • Clarified .NET Framework defaults: Updated from ".NET Framework 4.5" to ".NET Framework 4.5 or later" for accuracy
  • Added modern .NET defaults: Explicitly documented that modern .NET projects (.NET 5+) default to subsystem version 6.00, allowing applications to run on Windows Vista and later

Metadata Updates

  • Updated ms.date from 2021 to 2024 to reflect the current information

Issue Resolution

This addresses the specific concerns raised in the issue:

  1. ✅ Modern .NET base class library naming (System.Private.CoreLib.dll vs mscorlib.dll)
  2. ✅ Current SubsystemVersion default behavior for modern .NET
  3. ✅ Complete and up-to-date Windows version table

The documentation now accurately reflects the differences between .NET Framework and modern .NET (.NET 5+) compiler behavior while maintaining backward compatibility information.

Fixes #41990.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.


Internal previews

📄 File 🔗 Preview link
docs/csharp/language-reference/compiler-options/advanced.md docs/csharp/language-reference/compiler-options/advanced

Co-authored-by: BillWagner <493969+BillWagner@users.noreply.github.com>
@Copilot Copilot AI changed the title [WIP] Advance Compiler Settings page out-of-date Update Advanced Compiler Settings documentation for modern .NET Aug 18, 2025
@Copilot Copilot AI requested a review from BillWagner August 18, 2025 14:49
Copilot finished work on behalf of BillWagner August 18, 2025 14:49
Copy link
Member

@BillWagner BillWagner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is ready for a final review.

@BillWagner BillWagner marked this pull request as ready for review August 19, 2025 13:53
@BillWagner BillWagner requested a review from a team as a code owner August 19, 2025 13:53
@BillWagner BillWagner requested a review from adegeo August 19, 2025 13:53
@BillWagner BillWagner enabled auto-merge (squash) August 22, 2025 18:13
Co-authored-by: adegeo <67293991+adegeo@users.noreply.github.com>
auto-merge was automatically disabled August 22, 2025 20:17

Head branch was pushed to by a user without write access

@Copilot Copilot AI requested a review from adegeo August 22, 2025 20:18
Copilot finished work on behalf of adegeo August 22, 2025 20:18
Co-authored-by: adegeo <67293991+adegeo@users.noreply.github.com>
Copilot finished work on behalf of adegeo August 22, 2025 20:20
@BillWagner BillWagner merged commit 2fe4138 into main Aug 23, 2025
10 checks passed
@BillWagner BillWagner deleted the copilot/fix-41990 branch August 23, 2025 00:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Advance Compiler Settings page out-of-date
3 participants