Releases
v6.2
New Language Features
C# 7.0: Deconstruction
C# 8.0: await foreach
C# 8.0: Disposable ref struct
s
C# 8.0: Enhanced using
statements
C# 8.0: switch
expressions
C# 9.0: init
accessors
C# 9.0: function pointers (see #2150 )
C# 9.0: foreach with GetEnumerator extension methods
C# 9.0: Lambda parameter discards
General
Add an option to enable aggressive inlining of expressions
Add option for string.Concat
decompilation
Add an option to always qualify member references (by @Pathoschild , see #2114 )
ReadyToRun: Variable tracking in output (by @edkazcarlson , see #2067 )
ReadyToRun: Optimized debug info output (by @cshung , see #2113 )
Work on unifying the code formatting (see #2128 )
Tests upgraded to Roslyn 3.8.0-3.final
UI Improvements
Improve performance of Metadata DataGridCell (see #2151 )
Fix #2107 : Add ScrollViewer around DisplaySettingsPanel
Metadata: Improvements/fixes by @srutzky , see #2134 , #2135 , #2145 , #2147 and #2153
Updated Chinese translation
Bug fixes
Fix #2129 : be more flexible about the initialization order for the async state machine
Fix #2140 : ILSpy 6.2p1 no longer respects "use discards" setting
Fix #2139 : ArgumentOutOfRangeException for some xmldoc
Fix #2039 : Code generated by VB's On Error Resume Next causes "unassigned variable" compile errors
Fix #2156 : range syntax not being detected correctly in some cases
BAML decompiler: #2109 and #2106
Fix #2086 : Check that window belongs to ILSpy before sending it a WM_COPYDATA message.
Fix #2090 : ignore mscorlib references without public key token, when trying to resolve mscorlib. This will automatically fallback to .NET 4.0's mscorlib.dll.
#1292 : Fix some more problems with pinned locals.
Fix #1555 : Eliminate value-type temporaries emitted by mcs on field reads.
Fix #2056 : "remove branch into body" must be executed before the clone cleanup
Fix #2101 : reset removeExtraLoad flag if keepAssignmentBefore is set; implement simple case-de-duplication: abort if there are any duplicate cases.
Fix #2100 : 'value'-named auto property could not be recognized correctly.
Fix #1441 : Decompose flags enum values starting from the value with the highest Hamming Weight (popcount).
You can’t perform that action at this time.