Skip to content

Latest commit

 

History

History
74 lines (55 loc) · 6.61 KB

Changelog-for-C#-and-VB-compilers.md

File metadata and controls

74 lines (55 loc) · 6.61 KB

General information

Visual Studio 2017 Version 15.7

The C# compiler now supports the 7.3 set of language features including:

Visual Studio 2017 Version 15.6

The C# compiler now supports:

  • Compiler server on CoreCLR, for build throughput performance
  • Strong name signing on CoreCLR (/keyfile option, all OSes)

Two minor languages changes where made to the 7.2 language features:

  • Tie-breaker for in overloads (details)
  • Relax ordering of ref and this in ref extension methods (details)

Shipped APIs, Bug fixes

The C# compiler now supports the 7.2 set of language features including:

  • Support for the Span<T> type being used throughout Kestrel and CoreFX via the ref struct modifier.
  • readonly struct modifier: Enforces that all members of a struct are readonly. This adds a layer of correctness to code and also allows the compiler to avoid unnecessary copying of values when accessing members.
  • in parameters / ref readonly returns: Allows for unmodifiable structs to be safely passed and returned with the same efficiency as modifiable ref values.
  • private protected access modifier: Restricts access to the intersection of protected and internal.
  • Non-trailing named arguments: Named arguments can now be used in the middle of an argument list without the requirement that all following arguments are passed by name as well.

Bug fixes

The C# compiler now supports the 7.1 set of language features, including:

The C# and VB compilers now can produce reference assemblies.

When you use C# 7.1 features in your project, lightbulb offers to upgrade your project’s language version, to “C# 7.1” or “latest”.

Shipped APIs, Bug fixes

The C# compiler now supports the 7.0 set of language features, including: