186 Commits (343694c5499d2dd68896563bbbfc72604231deef)

Author SHA1 Message Date
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
Siegfried Pammer 5f324de10b Add support for ref fields. 3 years ago
Siegfried Pammer 5f73bfbb01 Fix Deconstruction for Deconstruct instance methods of value-types. 3 years ago
Daniel Grunwald 2419c2641a StatementBuilder.TransformToForeach: allow both `break;` and `return;` within the using body 4 years ago
Siegfried Pammer 8fc64669c2 Add annotations on local function parameter declarations 4 years ago
Siegfried Pammer bf8166d045 Fix #2291: block container end labels should be unique as well. 4 years ago
Siegfried Pammer f29205448b Fix #2283: Disallow all implicit conversions in switch on string. 4 years ago
Siegfried Pammer 63ca748b9a Fix #2283: string.to.int instruction entails a conversion to string of the input value 4 years ago
Daniel Grunwald 54231edb4b Fix #2189: Invalid C# generated when pinning an unmanaged pointer. 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 4e07c952ab Fix #2195: foreach loop conversion accidentally removes end container label. 5 years ago
Siegfried Pammer e7cb27a134 Fix #2182: Ensure that all labels generated by StatementBuilder are unique. 5 years ago
Siegfried Pammer 813cd1842f #2156: Enforce string type of string.to.int argument. 5 years ago
Siegfried Pammer 13636c89cc Add support for C# 9: foreach with GetEnumerator extension methods. 5 years ago
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 5 years ago
Siegfried Pammer 562699fc94 Add support for C# 8.0 await foreach 5 years ago
Siegfried Pammer b1b49b5a56 Fix bugs in foreach deconstruction and deconstruction declaration, if the same variable is used multiple times. 5 years ago
Siegfried Pammer 3390d3849d Added support for `var (a, b, _) = ...;` syntax in deconstruction. 5 years ago
Siegfried Pammer dab70964a5 Add support for C# 8.0 disposable ref structs 5 years ago
Siegfried Pammer c9f5e5dd33 Refactor ForeachStatement to support deconstruction 5 years ago
Daniel Grunwald abb9d49a0f Add support for C# 8 switch expressions. 5 years ago
Siegfried Pammer 18ace00266 Refactor LocalFunctionDeclarationStatement + LocalFunctionMethod 5 years ago
Daniel Grunwald 35c405b973 Translate the initializer of a `fixed` statement as managed reference and only apply the ref-to-pointer conversion at the end. 5 years ago
Siegfried Pammer 9f0ca09e56 Fix #2033: Wrong place for variable declaration. 5 years ago
Siegfried Pammer 8925b4ff7b Inline variable declarations/modernize parts of our code base. 5 years ago
Siegfried Pammer ba5c645257 Add TryCatchHandler annotation to CatchClause 5 years ago
Siegfried Pammer e748e71b56 Implement workaround for #1961 5 years ago
Siegfried Pammer 5d622056a1 Add TranslatedStatement: require that C# statements must be annotated with their corresponding ILInstructions. 5 years ago
Siegfried Pammer b953d6e8d0 Fix potential NRE in StatementBuilder.TryCatch 5 years ago
Siegfried Pammer 9e89384916 Make NumberOfCompilerGeneratedGenerics immutable and rename to NumberOfCompilerGeneratedTypeParameters 5 years ago
Daniel Grunwald eb2a9e6b94 #1852: Rename array.to.pointer opcode to get.pinnable.reference. 6 years ago
SilverFox 5e6fecebf5 Rework support for generic local function, and fix tests `LocalFunctions.Generic.Test_CaptureT` and `LocalFunctions.Generic.TestGenericArgs` 6 years ago
SilverFox 6409fe945c Add support for static local function 6 years ago
SilverFox f039705704 Add support for generic local function 6 years ago
Siegfried Pammer 64b9511aca #1749: Represent multi-instruction BlockContainers in expression-context as inlined delegate invocation. 6 years ago
David Wengier e30e08a59d The resource expression is always needed regardless of the setting. 6 years ago
David Wengier 3aebec96f5 Fix NullReferenceException when foreach decompilation is turned off 6 years ago
Daniel Grunwald 80cb24d180 Fix #1709: NullPropagationTransform.IsGetter on generic types 6 years ago
Siegfried Pammer c7f98a4db7 Add support for await using statements. 6 years ago
Daniel Grunwald c56714c607 Fix assertion with async lambdas; fix async local functions. 6 years ago
Daniel Grunwald 0a54a93be0 Relax foreach transform to allow stack slots as foreach-variable again. 6 years ago
Daniel Grunwald 856cedc95e #1456: add test case; add additional checks to ensure we only transform normal locals into using/foreach-locals 6 years ago
Daniel Grunwald beed6b5e24 Remove MarkGeneratedVariables() step in AsyncAwaitDecompiler. 6 years ago
Daniel Grunwald 5a8796c05c Reuse the existing TSAB. 6 years ago
Siegfried Pammer 37e14f43e3 Refactor/Clean up local functions representation in type system. 6 years ago
Siegfried Pammer 0719aa9f08 Enable DecompilerSettings.IntroduceLocalFunctions 6 years ago
Siegfried Pammer b83cb41f2e Add pretty tests for local functions. 6 years ago
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 6 years ago
Siegfried Pammer 8d1522f387 Transform display classes used in local functions. 6 years ago