1571 Commits (37c56e7e7b977de64c78a129031e6744b59ad7a2)

Author SHA1 Message Date
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
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
Daniel Grunwald 245261a1e5 #nullable enable for Instructions.tt 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 109b6d073a Allow detecting exit points across multiple levels of containers. 4 years ago
Daniel Grunwald a716828065 Remove redundant code from RemoveRedundantReturn.cs 4 years ago
Siegfried Pammer 1f0f6404e0 Fix #2231: Add support for ldloca; dup; initobj pattern used by Roslyn. 4 years ago
Daniel Grunwald 685a79dc31 DetectExitPoints: introduce exit points for loops+switch 4 years ago
Siegfried Pammer 62fc4bc1a3 Fix #1858, Fix #2188: Remove variables that contain copies of display-class variables. 4 years ago
Daniel Grunwald 6757295b3b Fix #2379: Keep `return` statements around in original form for ConditionDetection, only transform to fall-through block-exit at the end of the transform pipeline. 4 years ago
Siegfried Pammer 584d1847df Fix #2405: Assertion fail in TDCU 4 years ago
Siegfried Pammer 2d65deffda Fix frontends.sln build. 4 years ago
Siegfried Pammer ba39dd5c55 Fix #2354: decompilation of unary and binary operators with nullable value types. 4 years ago
Daniel Grunwald 407ec6be5b Adjust AsyncAwaitDecompiler to Roslyn 3.9.0. 4 years ago
Siegfried Pammer d92dd153fc #2390: Make sure all unused captured variables are removed even in lambdas. 4 years ago
Siegfried Pammer e20ace0098 Fix build. 4 years ago
Siegfried Pammer d54016ce8f #2390: Add support for generic object initializers. 4 years ago
Daniel Grunwald bd9aabeae2 Update to dotnet-format 5.1.225507. 4 years ago
Siegfried Pammer 7211587b45 Fix #2366: NRE in AwaitInCatchTransform.MatchAwaitCatchHandler() and pattern errors when dealing with a switch-based jump table in AwaitInCatchTransform 4 years ago
Siegfried Pammer 76227af89d Fix #1749, fix #2339, fix #2353: Add support for rethrow in async exception handlers, fix await catch/finally patterns for complex methods. 4 years ago
Siegfried Pammer d2fc380e0e Fix #2349: Use proper ExpressionType with DynamicCompoundAssign. 4 years ago
Siegfried Pammer d60f158dfd Fix #2342: Do not generate empty names for foreach loop variables. 4 years ago
Siegfried Pammer 4ae41a855e Fix #2321: Missing readonly modifier for ref local 4 years ago
Daniel Grunwald eec24ee6bb Fix #2311: Handle additional `comp` instruction in `IsNullSafeArrayToPointerNotNullBlock` 4 years ago
Daniel Grunwald f726a0b73e #nullable enable for typesystem and ILInstruction base class 4 years ago
Siegfried Pammer 67be41a998 #2294: Fix potential NRE: finalStore is accessed before null check. 4 years ago
文煌 581a1de185 fix https://github.com/icsharpcode/ILSpy/issues/2288 4 years ago
Daniel Grunwald 6951ccb1a2 Fix #2260: switch(string) transform: handle empty cases where the C# compiler optimizes out the `if` 4 years ago
Siegfried Pammer 669fe6417e Fix #2280: Add additional checks to GenerateVariableName 4 years ago
Siegfried Pammer 66850e4725 Fix #2270: I love deleting code that causes problems and no longer makes any sense at all! 4 years ago
Siegfried Pammer 288c6a75e7 Use ToLower instead of ToLowerInvariant. 4 years ago
Siegfried Pammer dd84f17ea1 #2263: Fix IsLowerCase to take script without upper/lower case distinction into account. 4 years ago
Siegfried Pammer 06bae54b91 Fix #2263: Add lower-case type and member names to the list of existing names, to prevent collisions. 4 years ago
Siegfried Pammer 3676107379 Fix #2266: Failed to decompile complex expression tree. 4 years ago
Siegfried Pammer 3df82cf33b Add support for 'with' expressions 4 years ago
Siegfried Pammer 9932b5d9f2 Fix #2230: do not emit directly consecutive null propagation operators. 4 years ago
Siegfried Pammer c986dbe889 Fixes #2232: We only need a small percentage of features provided by Humanizer. Therefore we copy the relevant parts and remove the dependency in order to avoid such problems in the future. 5 years ago
Siegfried Pammer d0d8299ef5 Use Name from DynamicInvokeMemberInstruction when inferring variable names. 5 years ago
Daniel Grunwald 6e8c1b3117 ILReader: support comparison between StackType.Ref and StackType.I 5 years ago
Daniel Grunwald 782e4ae88c Fix #2215: Use `Unsafe` intrinsics for `ldobj`/`stobj` instructions. 5 years ago
Siegfried Pammer b7d2eec41d #2199: Add support for VB cached delegate initialization 5 years ago
Siegfried Pammer d3b0e4cd72 Fix #2196: Add support for extern local functions. 5 years ago
Siegfried Pammer a7f58e8657 Fix build and use specific version of dotnet-format. 5 years ago
Siegfried Pammer 3a7c69e5b9 Fix #2192: Add support for VB.NET delegate construction 5 years ago
Siegfried Pammer be57dc454c Run tests with different versions of Roslyn 5 years ago
Daniel Grunwald 80cf72e498 #2182: Move "Transform call to struct constructor" from EarlyExpressionTransforms to ILReader. 5 years ago