510 Commits (8c440f42a89e8c9869927ab818eda9d8a74361c6)

Author SHA1 Message Date
Siegfried Pammer 8c440f42a8 Fix #2166: Unnecessary uint casts/conversions for certain bitwise operations 8 months ago
Siegfried Pammer 7b1f8a305c Implemented support for string concatenation compound assignments involving ReadOnlySpan<char>. 11 months ago
Siegfried Pammer 03a20f3494 Support ILInlining for in parameters 11 months ago
Siegfried Pammer 02d2a8c1f8 Add metadata processing for C# 12 'ref readonly' parameters 11 months ago
Siegfried Pammer 4bf9487ecd Remove IsRef, IsOut and IsIn flags from IParameter and Replace ParameterModifiers with ReferenceKind. 11 months ago
Siegfried Pammer 972354913e Fix #3209: Ensure using directives are added for extension methods in higher level patterns such as: foreach -> GetEnumerator(), collection initializer -> Add() and deconstruction -> Deconstruct(). 1 year ago
Siegfried Pammer eae54ddf24 Fix #3014: Missing type information in lambda expressions. 2 years ago
Siegfried Pammer 70616b301c Implement support for C# 11 switch on (ReadOnly)Span<char>. 2 years ago
Daniel Grunwald 03bceed0c1 Fix #2397: Introduced calls to Unsafe.Read or Unsafe.Write when we would otherwise cause "Cannot declare a pointer to a managed type T" errors. 2 years ago
Siegfried Pammer bf96482d56 Support decimal constants in pattern matching 2 years ago
Siegfried Pammer 688474facd Add missing DecompilerSettings for new language features 2 years ago
Siegfried Pammer 8cb3a67c0c Support recursive pattern for value types 2 years ago
Siegfried Pammer 51a8eb28f1 Add support for var sub patterns. 2 years ago
Siegfried Pammer 3218a06396 Add support for string constant patterns. 2 years ago
Siegfried Pammer 65b4c928c0 Add support for simple constant patterns. 2 years ago
Siegfried Pammer f7343c75d0 Add support for simple recursive patterns where the sub pattern is a simple type pattern. 2 years ago
Siegfried Pammer 3d8cda5f88 Fix #2613: Detect pattern matching on variables of generic type with value types. 2 years ago
Siegfried Pammer 13227e433e Fix compound assignments with local variables. 2 years ago
Daniel Grunwald b80d20b15d Add support for calling `operator checked`. 2 years ago
Daniel Grunwald a2019c5d78 Avoid using `>>>` operator when the context expects a cast to unsigned anyway. 2 years ago
Daniel Grunwald 8b9ba20847 Builtin unsigned right shift operator. 2 years ago
Daniel Grunwald 3c46271a11 Add support for unsigned right shift. 2 years ago
Daniel Grunwald f568123704 Add support for UTF8 string literals 2 years ago
Siegfried Pammer 4d6c5322e9 Fix #2888: Tuple syntax cannot be used in is-expressions, use underlying type instead. 2 years ago
Daniel Grunwald 747d4c8178
Improve assertion to apply to the C# type instead of the ILAst type 3 years ago
ElektroKill 25873a68e0
Improve support for post-increment/decrement on pointers 3 years ago
Standa Lukeš 93eecf93a5
Add more asserts and ToStrings around the FakeProperty.Setter problem 3 years ago
Siegfried Pammer a3191f19e2 Fix #2763: Improve decompilation of switch-on-enum by preserving enum type information when inlining local variables into SwitchInstruction.Value. 3 years ago
hexafluoride fc6ae4c645 Add option to always fully qualify type names with global:: 3 years ago
Siegfried Pammer 48a8351e27 Use Unsafe.SizeOf when taking the size of a managed type. 3 years ago
Siegfried Pammer 5f324de10b Add support for ref fields. 3 years ago
Daniel Grunwald 21c3ec046f Output attributes on lambda expressions 3 years ago
Siegfried Pammer f695bbcf3a Add support for DefaultInterpolatedStringHandler 3 years ago
Siegfried Pammer fbafc0289b Fix #2741: CallBuilder produces invalid invocation target when disambiguating calls to protected methods. 3 years ago
Siegfried Pammer d3f8912d53 Handle special-cases with addressof: 3 years ago
Siegfried Pammer 702a7da2c3 Fix #2714: Force inlining of call targets in ctor initializers. 3 years ago
Siegfried Pammer 6a27959cbc Improve decompilation of delegate references of extension methods. 3 years ago
Siegfried Pammer db034d3048 Remove incomplete/wrong support for null-forgiving operator. 3 years ago
Siegfried Pammer 41c99e4727 #2622: Fix crash in ExpressionBuilder when decompiling object initializer composed of readonly properties. 3 years ago
Daniel Grunwald 787621fb51 Revert "Use Nop instead of InvalidExpression to hold the "goto from catch-block to try-block" comment" 4 years ago
Daniel Grunwald 77dcbbee86 Use Nop instead of InvalidExpression to hold the "goto from catch-block to try-block" comment 4 years ago
Daniel Grunwald f104233e78 Fix #2388: Add support for branch from catch-block to try-block (VB `On Error Resume Next`) 4 years ago
Daniel Grunwald 47b12a1d9a Fix #2317: Crash in ExpressionBuilder.VisitStLoc when storing to a null pointer 4 years ago
Daniel Grunwald 7f985757a7 Fix #2541: Add explicit `unchecked()` around non-constant cast of constant to `nint` 4 years ago
Siegfried Pammer e1ca4db851 Fix #2527: Support skip locals init 4 years ago
Siegfried Pammer 6f032e267e Fix #2515: Auto events are not decompiled correctly, if left untouched. 4 years ago
Siegfried Pammer 1568aeca3e Fix #2506: NamedArgumentTransform loses information, if the original variable is of StackType.Ref 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
Daniel Grunwald bbaddf84cc Fix #2424: Suppress the string==null special-case within the string class itself. 4 years ago