dnSpyEx / dnSpy

Unofficial revival of the well known .NET debugger and assembly editor, dnSpy
GNU General Public License v3.0
6.83k stars 452 forks source link

choose c# version in editer as ilspy #261

Closed NCLnclNCL closed 11 months ago

NCLnclNCL commented 11 months ago

Problem Description

i see default dnspy use version c# is 1.0, it's quite outdated compared to modern c# syntax

Proposal

add c# version options

Alternatives

No response

Additional Context

No response

GazziFX commented 11 months ago

Its not 1.0 probably 5 or 6 newer C# versions supported in other branch https://github.com/dnSpyEx/dnSpy/tree/feature/new-ilspy

ElektroKill commented 11 months ago

The decompiler does not strictly support one version of C# and cuts off after it. It supports pretty much all features from C# 1.0-3.0, and some features of C# versions after that like generic variance, asynchronous methods, exception handler filters, auto property init, improved collection initializers, ref types, readonly modifier, function pointer types, dynamic types, etc. It is impossible to pinpoint the feature support to a specific version, and it definitely is not C# 1.0.

As mentioned by @GazziFX, there is a port of the newer ILSpy decompiler engine in the works and more information can be found here https://github.com/dnSpyEx/dnSpy/issues/5