547 Commits (6a04a33c4f81c15bd87e623b445fe787d0c75a71)

Author SHA1 Message Date
Daniel Grunwald 5911b13497 Fix modifiers on default interface methods. 6 years ago
Daniel Grunwald 605b32558a Extend InterfaceTests 6 years ago
Daniel Grunwald 8f90f3834d Implement support for C# 8 readonly members. 6 years ago
Siegfried Pammer 7c8458dfa3 Refactor TransformDisplayClassUsage 6 years ago
Daniel Grunwald 1d95eb60a2 Fix #1680: Invalid cast `(uint?)-1` 6 years ago
Siegfried Pammer dc1e72a3d0 Fix #1151: Add ref readonly test case. 6 years ago
Daniel Grunwald 0465cc8475 Adjust expected output in ILPretty tests 6 years ago
Daniel Grunwald 4b90e43187 Avoid making explicit ToString() implicit when doing so changes the semantics for mutable value types. 6 years ago
Daniel Grunwald b5eecb8afc Don't remove redundant ToString() calls in expression trees. 6 years ago
Daniel Grunwald 7a5d8af57d #1691: Further improvements for decompiling the new VS 2019.3 string concatenation IL pattern 6 years ago
Daniel Grunwald c32361d464 #1691: Avoid replacing string.Concat() with operator+ when the evaluation order depends on the compiler version. 6 years ago
Daniel Grunwald b45f21e714 #1675: Fix converting static method to method group 6 years ago
Siegfried Pammer 9fff0438c0 Fix #1675: Emit __ldftn/__ldvirtftn pseudo expressions, if delegate construction is not supported. 6 years ago
Daniel Grunwald fb70a2861e Fix #1656: Disable CopyPropagation for split variables. 6 years ago
Daniel Grunwald 0d3a3bee82 Fix #1703: Support async methods that never return normally. 6 years ago
Siegfried Pammer d2f7258347 Fix #1681: Use discard assignment, if possible. 6 years ago
Siegfried Pammer f5185d5697 Fix #1660: Generic proxy calls should use the callee's type parameter substitution, not the caller's. 6 years ago
Daniel Grunwald ab993fc6c6 Fix invalid code generated for impossible casts. 6 years ago
Daniel Grunwald 57b725df79 Fix #1655: Incorrect pointer cast when calling method on integer constant 6 years ago
Siegfried Pammer 05454bd741 Fix SwitchOnStringTransform.SimplifyCascadingIfStatements: do not remove statements unrelated to switch pattern. 6 years ago
Siegfried Pammer 4db22c87e1 Implement detection of custom task implementations + tests. 6 years ago
Siegfried Pammer bbb40ecb32 Fix #1602: Recognize Roslyn empty string case block. 6 years ago
Siegfried Pammer def681ccdf Fix #1621: Add AllowUnreachableCases in switch analysis. 6 years ago
Daniel Grunwald f1021cb300 Fix #1643: Handle unbox.any in TransformCatchVariable. 6 years ago
Siegfried Pammer 44c044aa33 Fix #1635: DynamicInvokeConstructorInstruction Did report the wrong StackType for value types and unknown types. 6 years ago
Daniel Grunwald cdc7a3641f Fix references to nested types in generic classes. 6 years ago
Daniel Grunwald 7afa86d90c Add support for "where T : notnull" constraint. 6 years ago
Siegfried Pammer 13fa499c35 Fix #1630: Do not convert while to for statement, if any iterator variables are to be declared in the loop body. This causes problems with ref-typed variables. 6 years ago
Siegfried Pammer f49cc11c76 Fix #1627: Allow constants as targets of dynamic calls. 6 years ago
Siegfried Pammer fa7c1f574a Do not convert simple LINQ method calls to LINQ expressions. Closes #1501. 6 years ago
Siegfried Pammer 0ca5ace524 #1349: Fix assertions triggered by incorrect local function decompilation. 6 years ago
Daniel Grunwald 3f996ff2c0 Fix #1604: async methods that had no 'await' but were capturing 'this' were not decompiled correctly 6 years ago
Siegfried Pammer ec18094c65 Implement transformation of delegate construction with ldvirtftn. 6 years ago
Siegfried Pammer ce04964206 Reformat ThrowExpressions tests. 6 years ago
Daniel Grunwald df13f0ce01 Fix #1605: Inline ref locals more aggressively; this is necessary for VB compound assignments. 6 years ago
Daniel Grunwald 0e0179edff Improve NullPropagation (?.) when fields of value-type are involved. 6 years ago
Daniel Grunwald 7f8689c464 Allow inlining of compiler-generated value-type-temporaries when field accesses are involved. 6 years ago
Siegfried Pammer 4a0ca21bbf Add (failing) test case for throw expressions. 6 years ago
Daniel Grunwald 18ee984ade Add support for "definitely assigned if true/false" to data flow analysis. 6 years ago
Siegfried Pammer 14c76d1ba6 Fix failing initializer tests. 6 years ago
Daniel Grunwald 8117dfff4a Fix #1242: Discard unreachable code. 6 years ago
Siegfried Pammer c51aea3601 Fix decompilation of yield return in local functions. 6 years ago
Siegfried Pammer 911a92f3f9 Basic test for ref reassignment. 6 years ago
Daniel Grunwald d99f6c81a5 Fix #1595: preserve C# type for field and tuple element access 6 years ago
Siegfried Pammer 36afa0857d Add tests for ref, out and in parameters. 6 years ago
Siegfried Pammer e9a020062d Add more RefLocalsAndReturns pretty tests. 6 years ago
Daniel Grunwald 42eafb587f Fix #684: Improve detection of variable type for stack slots. 6 years ago
Daniel Grunwald 8cd8a90c22 Fix #1563: `Unexpected return in MoveNext()` when mixed `using` and more than one `yield break` 6 years ago
Daniel Grunwald 7e3b36aaa7 #1563: Where possible, replace an explicit interface implementation call with a call to the interface member. 6 years ago
Siegfried Pammer 3d60c7bd70 Fix #1590: Cast from override method to Delegate is not properly simplified 6 years ago