48 Commits
Author SHA1 Message Date
Siegfried Pammer 73e9771d3c Fix #2269: LocalFunctionDecompiler misplaces nested local functions in ctors 2025-03-21 00:10:00 +01:00
Siegfried Pammer 49942382d1 Fix #3432: Do not include delegate construction use-sites in DetermineCaptureAndDeclarationScopes. 2025-03-19 22:52:27 +01:00
Siegfried Pammer 4bf9487ecd Remove IsRef, IsOut and IsIn flags from IParameter and Replace ParameterModifiers with ReferenceKind. 2024-07-19 18:40:07 +02:00
Siegfried Pammer ca78d4a14d Use MetadataFile instead of PEFile in TypeSystem. 2024-03-24 15:35:13 +01:00
Siegfried Pammer bde782e4f5 Fix #2806: Do not use implicitly typed out variables, if argument and parameter types do not match exactly. 2022-10-27 19:16:05 +02:00
Siegfried Pammer a9c8f86abc Make TypeDef-ctor of FindTypeDecoder internal. 2022-03-07 17:14:06 +01:00
Siegfried Pammer 8cc0bf8b49 Generalize FindTypeDecoder 2022-03-07 17:14:04 +01:00
Siegfried Pammer 66850e4725 Fix #2270: I love deleting code that causes problems and no longer makes any sense at all! 2021-01-10 23:13:08 +01:00
Siegfried Pammer d3b0e4cd72 Fix #2196: Add support for extern local functions. 2020-10-24 23:12:55 +02:00
Siegfried Pammer 3a7c69e5b9 Fix #2192: Add support for VB.NET delegate construction 2020-10-23 21:38:38 +02:00
Siegfried Pammer 41edef710e Fix build. 2020-09-08 22:15:27 +02:00
Siegfried Pammer 0b0a6d94a8 Add support for local function pointers. 2020-09-08 21:27:57 +02:00
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 2020-08-28 01:05:38 +02:00
Siegfried Pammer 8d72672e6c Reimplement DecompilerSettings.StaticLocalFunctions (was lost in the refactoring in #2077) 2020-07-26 20:30:03 +02:00
Siegfried Pammer 18ace00266 Refactor LocalFunctionDeclarationStatement + LocalFunctionMethod 2020-07-25 21:07:56 +02:00
Daniel Grunwald 2acc4339df #2058: Mark most transforms as public to help users that use the ILAst directly without decompiling to C#. 2020-07-22 21:25:22 +02:00
Siegfried Pammer 74101ff0dc Fix #2053: Assert and NRE in LocalFunctionDecompiler 2020-06-30 13:11:01 +02:00
Siegfried Pammer fcc910cb4d Cleanup and refactoring after code review 2020-06-06 10:46:26 +02:00
Siegfried Pammer 0d1b6203df #1981: Refactor LocalFunctionDecompiler: Propagate closure parameter arguments, so that all arguments can be stripped from use-sites. 2020-05-12 19:04:02 +02:00
Siegfried Pammer 28391c4864 Fix #1895: local function not added to the correct parent function. 2020-01-20 10:39:31 +01:00
Siegfried Pammer f831e4713f Fix #1867: Captures of copies of this are not properly handled by the decompiler 2019-12-20 11:12:00 +01:00
Siegfried Pammer f08a721e6a Merge pull request #1797 from yyjdelete/localFunc
Add support for generic and static local function

Fixes #1588
2019-12-19 17:58:23 +01:00
Siegfried Pammer 5be6be97df Code review:
* rename a few identifiers,
* add comments,
* skip all compiler-generated type-arguments in resolve result,
* and change implementation of LocalFunctionMethod.Specialize: wrap specialized method and not the other way round.
2019-12-19 17:35:15 +01:00
Siegfried Pammer 9e89384916 Make NumberOfCompilerGeneratedGenerics immutable and rename to NumberOfCompilerGeneratedTypeParameters 2019-12-19 15:54:36 +01:00
Siegfried Pammer e189ad9ca3 Fix #1863: Invalid decompilation: accessibility level for CompilerGenerated method 2019-12-16 15:54:52 +01:00
SilverFox a5d85fea3f Add an workaround for #1798 2019-11-16 11:22:17 +08:00
SilverFox 33f96fd888 Fix tests LocalFunctions.NestedCapture1 2019-11-15 08:06:33 +08:00
SilverFox 5e6fecebf5 Rework support for generic local function, and fix tests LocalFunctions.Generic.Test_CaptureT and LocalFunctions.Generic.TestGenericArgs 2019-11-15 08:06:33 +08:00
SilverFox e60f1f5a87 Skip LocalFunctionDecompiler if the top scope is LocalFunction or LocalFunctionDisplayClass 2019-11-15 08:06:32 +08:00
SilverFox f039705704 Add support for generic local function 2019-11-15 08:06:31 +08:00
Siegfried Pammer 76a8a4449c #1671: Do not crash if a generic local function is encountered. Emit warning instead. 2019-08-27 12:11:25 +02:00
Siegfried Pammer 4246a178f4 Remove unused parameter. 2019-08-09 11:23:37 +02:00
Siegfried Pammer fdf4228a17 Fix #1623: Nest local functions correctly, if captured variables are used. 2019-08-09 10:34:16 +02:00
Siegfried Pammer 3ad8c88d39 Fix #1622: Transform local functions calls with named arguments correctly 2019-08-09 10:28:44 +02:00
Siegfried Pammer 0ca5ace524 #1349: Fix assertions triggered by incorrect local function decompilation. 2019-08-05 14:38:26 +02:00
Siegfried Pammer f10ab69328 Improve local-function detection to minimize false positives. 2019-07-23 18:33:38 +02:00
Siegfried Pammer a109b77858 Refactor LocalFunctionDecompiler to allow mutually recursive local functions to be decompiled correctly. 2019-07-23 01:13:12 +02:00
Siegfried Pammer e215f69b2d Extend description of LocalFunctionDecompiler 2019-07-18 21:00:04 +02:00
Siegfried Pammer 37e14f43e3 Refactor/Clean up local functions representation in type system. 2019-07-18 20:51:24 +02:00
Siegfried Pammer f3f38783df ICSharpCode.Decompiler roundtrip test now completes 2019-07-17 21:45:52 +02:00
Siegfried Pammer 01e42b772c Fix local functions inside lambdas. 2019-07-15 18:37:59 +02:00
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 2019-07-15 10:10:40 +02:00
Siegfried Pammer 16d6e16da7 Add support for local function references and recursive local functions. 2019-07-14 16:22:00 +02:00
Siegfried Pammer 8d1522f387 Transform display classes used in local functions. 2019-07-13 20:29:30 +02:00
Siegfried Pammer bd77b8301f Basic implementation of local functions. 2019-06-24 17:51:13 +02:00
Siegfried Pammer 091dc25a82 Fix #1340: Update local function check to match latest version of Roslyn. 2018-12-17 21:22:38 +01:00
Siegfried Pammer 1854a33749 Fix #1340: infinite recursion in DelegateConstruction due to recursive local function being mistreated as delegate construction. 2018-12-17 17:58:18 +01:00
Siegfried Pammer cf1d05042f Add detection of local functions, so we do not hide the methods/display classes. 2018-08-12 21:21:46 +02:00