3933 Commits (52628a219a1273d23571c6afbefe92f482f9965b)

Author SHA1 Message Date
Siegfried Pammer 665c731cfc Move PatternMatchingTransform after LoopDetection. 4 years ago
Siegfried Pammer 55f1125f94 Ensure that pattern locals get distinct variable names. 4 years ago
Siegfried Pammer 9d99ee86db Fix #2503: Move correct branch in the case of swapped jump-table conditions. 4 years ago
SilverFox 1367e7ba95 Add support for `in parameters` in primary ctor of records 4 years ago
SilverFox 11b44e53b7 Add support for attributes of field/property in primary ctor of records 4 years ago
SilverFox 58bed656cd Fix records support for Roslyn 4.0.0-3.final 4 years ago
Siegfried Pammer 6cc89378aa Remove unused code. 4 years ago
Siegfried Pammer 6628e0a410 Fix #2500: NRE and other bugs when hovering over symbol with <inheritdoc />. 4 years ago
Siegfried Pammer 47dcf0507f #2500: nullable enable XmlDocumentationElement 4 years ago
Siegfried Pammer 1568aeca3e Fix #2506: NamedArgumentTransform loses information, if the original variable is of StackType.Ref 4 years ago
Daniel Grunwald 9a053d5e6c nullable enable for CSharpOperators.cs 4 years ago
Siegfried Pammer 19d5ea4095 Fix #2505: Do treat whole resource name as file name without directory at the start of GetFileNameForResource. 4 years ago
Siegfried Pammer 07199e2ecf Fix #2038: Add proper support for Long paths on Windows 10 and limit path segments to 255 characters (with long path support) or 30 characters. If a PathTooLongException is thrown display a better error message on project export. 4 years ago
Siegfried Pammer dbbcbb87fe Make pattern matching transform a simple ILTransform for both reference and value types. Check that the true branch dominates all uses of the pattern variable. 4 years ago
Siegfried Pammer ed82bff896 Fix #2497: NRE in covariant returns check on set-only property 4 years ago
Siegfried Pammer e50d221e06 Adjust NullableLiftingTransform to match new patterns due to RemoveInfeasiblePathTransform. 4 years ago
Siegfried Pammer 900d0a4b93 Fix #1966: Add option to show raw offsets and instruction bytes in IL view. 4 years ago
Siegfried Pammer 48adb52489 Show header size in IL output. 4 years ago
Siegfried Pammer 73c898664f Fix #2484: Private modifier incorrectly applied to interface static constructors 4 years ago
SilverFox 89eebc387a Fix #2475: Fix support for records with custom copy ctor 4 years ago
SilverFox d0d70a6496 Fix #2475: Add support for sealed records and records with interface 4 years ago
Siegfried Pammer 84704a7452 Adds support for C# 9 covariant return types in methods and getter-only properties and indexers. 4 years ago
Siegfried Pammer 84101f804a Fix #2444: Ambiguous implicit conversions from null literals in decompiled code 4 years ago
Siegfried Pammer cd787c5549 Fix DecompilerSettings.PatternMatching should only be active in case >= CS70. 4 years ago
Siegfried Pammer 2b26e5013b Add Roslyn 2.x pattern for value type pattern matching. 4 years ago
Siegfried Pammer cd0c76d7b1 Support leave instructions in RemoveInfeasiblePathTransform and transform match(x) ? true : false to match(x). 4 years ago
Siegfried Pammer 5fa8201533 Added support for isinst-unbox.any pattern with generic reference types and simplified value types pattern detection. 4 years ago
Siegfried Pammer 83727ea4b0 Add support for value type patterns 4 years ago
Siegfried Pammer 357d55d2ad Add support for old roslyn pattern matching pattern. 4 years ago
Daniel Grunwald c26d9ad6f1 Mark stack slot for aggressive removal in InfeasiblePathTransform 4 years ago
Siegfried Pammer c641072685 Translate MatchInstruction to BinaryOperatorExpression with BinaryOperatorType.IsPattern. 4 years ago
Daniel Grunwald 040ab41c69 Initial implementation of the pattern matching transform. 4 years ago
Christoph Wille 6e4566d224 Add back DebugSymbols to csproj 4 years ago
Christoph Wille b95f3aa1d2 Switch release and debug to embedded debug info 4 years ago
Christoph Wille 648fe32aa0 Reproducible builds, see https://devblogs.microsoft.com/dotnet/producing-packages-with-source-link/ and https://github.com/dotnet/reproducible-builds (for Release only) 4 years ago
Siegfried Pammer ec1b9a4ccd Fix #2443: do not use this()-ctor initializers by accident if base type is unknown. 4 years ago
Siegfried Pammer 8eafbb3d90 Fix #2092: aggressively inline code in compiler-generated lambdas and expression trees. 4 years ago
Siegfried Pammer 164c8880af #2092: Make TransformExpressionTrees.MatchGetTypeFromHandle and TransformExpressionTrees.MatchGetContructorFromHandle use IType.FullName instead of actual IType instances, so we can better handle assemblies processed by tools like ILMerge, where there might be used multiple versions of mscorlib in one assembly. 4 years ago
Siegfried Pammer bc5d078feb Fix #1698: Readonly auto properties from VB.NET are not properly decompiled 4 years ago
Siegfried Pammer 35ad7f3074 Update build tools used by ILSpy to use .NET 5.0 instead of .NET Core 3.1 4 years ago
Daniel Grunwald ffed8ea2c8 #nullable enable for AstNode 4 years ago
Daniel Grunwald 245261a1e5 #nullable enable for Instructions.tt 4 years ago
Daniel Grunwald bd29ed5981 Revert CSharpPrimitiveCast.cs: its used in Conversions.cs test case and thus must be compatible with old C# compiler versions 4 years ago
Daniel Grunwald 0414e7f8e9 Fix potential NRE in ILFunction.RegisterVariable() 4 years ago
Siegfried Pammer c22977e1be Fix #2390: Extend variable splitting to treat stobj as immediate address use. 4 years ago
Daniel Grunwald 5fb2f7a22f #nullable enable for ILAst (except for generated code) 4 years ago
Daniel Grunwald b9eee606af #nullable enable for most files in ICSharpCode.Decompiler/Util 4 years ago
Daniel Grunwald 109b6d073a Allow detecting exit points across multiple levels of containers. 4 years ago
Daniel Grunwald 2419c2641a StatementBuilder.TransformToForeach: allow both `break;` and `return;` within the using body 4 years ago
Daniel Grunwald a716828065 Remove redundant code from RemoveRedundantReturn.cs 4 years ago