922 Commits (dbbcbb87fe8604e2741ee9e23987de59c37229db)

Author SHA1 Message Date
Daniel Grunwald 4ad4f6a232 Fix #882: Don't inline value-type temporaries for setter calls. 6 years ago
Daniel Grunwald a5505ab00d Expose IMethod.AccessorKind. This makes it easier to determine if a method is a setter, particular in generic classes where "m.AccessorOwner?.Setter == m" ended up being wrong. 6 years ago
Siegfried Pammer eed690a0fc Fix #1449: Fix error message typo. 6 years ago
Daniel Grunwald 40b6f0c7bf Use appropriate type for helper variables introduced for named arguments. 6 years ago
Siegfried Pammer b0309ca9e3 Fix #1180: Fix generation of Windows Forms InitializeComponent. 6 years ago
Daniel Grunwald 4987f78d21 Limit the number of instructions validated for the $"{transform.GetType().Name} modified an instruction before pos" assertion; this makes debug-mode performance less horrible. 6 years ago
Daniel Grunwald eb942b4a21 Fix #1430: Improve performance in ILInlining. 6 years ago
Siegfried Pammer 1c261c6170 Optimize ProxyCallReplacer: ignore calls to static methods as those can never be a call to a proxy. 6 years ago
Siegfried Pammer 5dfc6132d9 Fix #1443: ProxyCallReplacer replacing non-proxy-calls with arbitrary calls. 6 years ago
Siegfried Pammer 7671ac6fe4 Fix switch on nullable for Roslyn. Ignore switch on bool because it is indistinguishable from if (bool). 6 years ago
Siegfried Pammer 6e49efd5aa Extend ILInlining to work with StringToInt instructions inside Switch instruction. 6 years ago
Siegfried Pammer 9c62f11e51 Add new switch(string) pattern for Roslyn. 6 years ago
Siegfried Pammer 80bc89f606 Fix SwitchOnStringTransform.SimplifyCascadingIfStatements to handle newer Roslyn code-gen correctly. 6 years ago
Siegfried Pammer d42cf99a8c Fix dynamic transforms because https://github.com/dotnet/roslyn/issues/27800 was fixed. 6 years ago
Daniel Grunwald 72508b5777 Add test for C# 8 nullable reference types; and fix some bugs. 6 years ago
Siegfried Pammer 94cd891609 Add support for ReadOnlySpan<T> initialization pattern. 6 years ago
Siegfried Pammer 0758c7ea32 Fix #1424: Complex from/where contains compiler generated names 6 years ago
Siegfried Pammer 00d6c6175a #1049: Check decompiler settings in TransformAssignment.HandleCompoundAssign as well. 7 years ago
Siegfried Pammer 087cb2489d Fix #1049: Unimplemented decompiler settings 7 years ago
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 7 years ago
Siegfried Pammer 4e290b545a Merge ILRanges of DelegateConstruction newobj + ldftn into ILFunction. 7 years ago
Daniel Grunwald 763683748b Emit debug info for display class locals, so that the debugger can show the values of captured variables. 7 years ago
Siegfried Pammer 84cf4ea6a1 Cleanup and fix ILRanges in DelegateConstruction. 7 years ago
Daniel Grunwald 9188a682e7 Add some steps to DelegateConstruction 7 years ago
Daniel Grunwald da5693e605 Fix #1339: fixed statement not decompiled correctly when pinned variable is reset in finally block 7 years ago
Daniel Grunwald 47ca51a769 Clarify the meaning of ILVariable.Index 7 years ago
Siegfried Pammer 40bbb24675 CombineExitsTransform: Remove unnecessary checks, add both ILRanges to combinedLeave instruction. 7 years ago
Siegfried Pammer d22e2ac677 Add header and comments describing transformation. 7 years ago
Siegfried Pammer deeb603fd7 Fix #1395: do-while loop missing entry-point label. 7 years ago
Siegfried Pammer ecde53969c Add IsInConstructorInitializer case to ILInlining.OptionsForBlock. 7 years ago
Siegfried Pammer 99fc57c6be CachedDelegateInitialization: Do not lose IL range by creating a new store instruction, reuse existing instruction instead. 7 years ago
Siegfried Pammer 238b5ac092 Fix CombineExitsTransform 7 years ago
Siegfried Pammer 3d5b300602 Improve TransformArrayInitializers: allow default entries at the end of a dimension > 0. 7 years ago
Siegfried Pammer 46b56f8482 Fix #1382: Do not reuse index instructions in TransformArrayInitializers 7 years ago
Siegfried Pammer 37a8156dab Fix #1383: NRE in TransformArrayInitializers. 7 years ago
Siegfried Pammer 008a3c71e5 DelegateConstruction: 7 years ago
Siegfried Pammer 859872ba8c Fix #1377: Fix IndexOutOfRangeException in TransformArrayInitializers 7 years ago
Siegfried Pammer 64686b9547 Fix #1336: multi-dimensional array initializers with custom objects not detected. 7 years ago
Siegfried Pammer ab8c73b2f7 #1336: Add limit in HandleSimpleArrayInitializer. 7 years ago
Siegfried Pammer dd2a2af31d Extend UsingTransform.CheckResourceType to support non-generic System.Collections.IDictionaryEnumerator. 7 years ago
Siegfried Pammer 0c1134f5ed Fix #1356: ExpressionTrees: ref parameter usage not transformed correctly. 7 years ago
Siegfried Pammer 590558883e Fix small regression in initializer tests. 7 years ago
Siegfried Pammer cb5960b8e0 Fix #1355: System.ArgumentException: An item with the same key has already been added in Decompiler.IL.Transforms.TransformExpressionTrees.ConvertLambda 7 years ago
Siegfried Pammer 875af13934 Fix #750: Missing recognizer for ?? when rhs is an assignment expression 7 years ago
Siegfried Pammer 77c1dbab8a Fix #1345: Do not construct object initializer, if property or field in access path is not writable. 7 years ago
Siegfried Pammer 667e04462a Fix #1325: Do not perform inline assignment transform on setter calls, that belong to parameterized properties. 7 years ago
Siegfried Pammer 091dc25a82 Fix #1340: Update local function check to match latest version of Roslyn. 7 years ago
Siegfried Pammer 1854a33749 Fix #1340: infinite recursion in DelegateConstruction due to recursive local function being mistreated as delegate construction. 7 years ago
Siegfried Pammer b9f179465d Fix part 1 of #1292: switch on string inside try-block not recognized. 7 years ago
Siegfried Pammer 112719efaf Extend safety-checks in TransformSpanTCtorContainingStackAlloc. 7 years ago