4405 Commits
Author SHA1 Message Date
Siegfried Pammer 485ca1d69a Fix #3353: Normal method is decompiled as lambda expression. 2025-03-31 23:36:49 +02:00
Siegfried Pammer 453fc06e02 Fix #3406: Wrong decompilation of record struct without primary constructor. 2025-03-31 17:17:59 +02:00
ds5678 7f024de786 Don't include generic constraints in generated explicit overrides 2025-03-30 14:16:43 -07:00
Siegfried Pammer 7d0262d779 Fix #3439: Regressed decompilation of variables in lambda scope 2025-03-29 20:23:49 +01:00
Siegfried Pammer 349a89c1fa Fix #3436: Duplicate naming of local functions 2025-03-29 17:57:43 +01:00
Siegfried Pammer 4ef3581b32 Merge pull request #3425 from ElektroKill/fix/issue3423
Improve generation of not equals check
2025-03-22 14:03:21 +01:00
Siegfried Pammer 96caa4ecb7 Fix: #3407 Add "private protected" feature for 7.2 decompiler options 2025-03-22 12:27:22 +01:00
Siegfried Pammer 51522c4487 Fix #3190: NRE in YieldReturnDecompiler 2025-03-22 10:14:11 +01:00
Siegfried Pammer 29861d7903 Fix #1647: Add a cast to enum constants where the enum type is not known. 2025-03-21 11:00:11 +01:00
Siegfried Pammer 356d7a1b43 Fix #3408: Wrong exported assembly type 2025-03-21 10:05:53 +01:00
Siegfried Pammer 355a039b59 Sightly improve variable naming of known types such as EventArgs and Exceptions 2025-03-21 08:34:44 +01:00
Siegfried Pammer 8a67f48e4e Fix #1956: Adapt previous fix for variable names that have a number as suffix. 2025-03-21 08:34:44 +01:00
Siegfried Pammer ffcd468d22 Fix #1572: parameters of lambdas and local functions are renamed, if there are with names from outer scopes collisions. 2025-03-21 08:34:44 +01:00
Siegfried Pammer 0481c7d1ee Improve LINQ decompiler to support combining lambda parameter names if they syntactically refer to the same range variable 2025-03-21 08:34:44 +01:00
Siegfried Pammer 03aecf047d Add VariableScope and rework AssignVariableNames step to support renaming parameters of nested ILFunctions in the future. 2025-03-21 08:34:44 +01:00
Siegfried Pammer a599aae54d #1572: Do not generate variable names that match C# keywords. 2025-03-21 08:34:44 +01:00
Siegfried Pammer 73e9771d3c Fix #2269: LocalFunctionDecompiler misplaces nested local functions in ctors 2025-03-21 00:10:00 +01:00
ElektroKill 16600fa633 Addressed feedback 2025-03-20 18:24:26 +01:00
Siegfried Pammer 49942382d1 Fix #3432: Do not include delegate construction use-sites in DetermineCaptureAndDeclarationScopes. 2025-03-19 22:52:27 +01:00
ElektroKill 012f5812e9 Fix #3423 2025-03-18 18:08:38 +01:00
Siegfried Pammer a264217952 Merge pull request #3422 from ds5678/fix-issue-3421
Improve null case handling in MatchLegacySwitchOnStringWithDict
2025-03-15 12:00:22 +01:00
ds5678 e4000c8a5c Enhance null handling in switch transformations
- Updated `Issue3421.cs`.
- Updated `MatchLegacySwitchOnStringWithDict` to check for `leaveContainer` and handle null sections accordingly.
- Introduced an overload for `AddNullSection` to accept `ILInstruction` as the body, improving flexibility.
- Modified existing `AddNullSection` to utilize the new overload, allowing for varied body types in `SwitchSection`.
2025-03-15 01:29:58 -07:00
Siegfried Pammer 412b5134e7 Merge pull request #3417 from icsharpcode/roslyn413
Roslyn 4.13
2025-03-12 19:08:19 +01:00
ds5678 cbe8dd43d7 Fix null check in MatchLegacySwitchOnStringWithDict
Updated the condition for `nullValueCaseBlock` to ensure it is not null and not equal to `defaultBlock`.
2025-03-09 21:00:36 -07:00
Siegfried Pammer f0f95efa05 Fix StateRangeAnalysis to handle changes in yield return codegen in Roslyn 4.13. 2025-03-08 19:55:19 +01:00
jwfx 5d1219950f Fix exception when writing resx files without adding any resources 2025-03-04 21:46:29 +01:00
ds5678 3a13d5a698 Allow explicit null termination character 2025-02-22 11:35:12 +01:00
Siegfried Pammer 38cdf6d50a Avoid transforming sub pattern of cpblk stackalloc initializer 2025-02-22 11:12:49 +01:00
Siegfried Pammer bd0fd8db1f Small refactorings:
- extract common code
- reduce nesting
2025-02-22 11:12:49 +01:00
ds5678 b0d6fa2276 Add support for array initialization based on RuntimeHelpers.CreateSpan<T> 2025-02-22 11:12:49 +01:00
Siegfried Pammer 53522c45f8 #3401: fix missing file extension if name contains ':' 2025-02-21 15:52:11 +01:00
Siegfried Pammer 3c70224441 Fix detection and display of explicitly implemented operators. 2025-02-21 11:59:21 +01:00
Siegfried Pammer 31bbcf41bc Fix handling of file extensions in project export. 2025-02-21 09:14:23 +01:00
Siegfried Pammer 292c21d68e #3401: Treat class name as single name and not as path. 2025-02-21 07:32:32 +01:00
Siegfried Pammer 6312ab18ae #2716: Fix typo 2025-02-21 07:11:42 +01:00
Siegfried Pammer 8b76879493 Fix #2716: Add an option to allow sorting custom attributes 2025-02-20 22:23:57 +01:00
Siegfried Pammer 5b90dbdabf Fix #3385: Allow address uses of structs in using transform, if the reference is passed to an in parameter. 2025-02-20 10:49:50 +01:00
Siegfried Pammer 0096994679 Fix #3401: normalize directory separators to use the current platform separator 2025-02-20 10:00:59 +01:00
Siegfried Pammer 202c5e22e3 Fix #3383: more aggressively transform object initializers on structs 2025-02-20 08:51:47 +01:00
Siegfried Pammer 2c419f68cf Fix #3322: Add missing checks for equality comparison 2025-02-14 20:27:41 +01:00
Siegfried Pammer d7d0f82418 Fix #3384: add special case for null-literal conversions in optional argument handling. 2025-02-12 22:58:11 +01:00
Siegfried Pammer 906d248403 Fix #3392: uses of init-setters must use object-initializer syntax. 2025-02-12 22:58:11 +01:00
Siegfried Pammer fa50e8d8b3 Add non-embedded attributes to all tests that use older framework versions. 2025-02-12 22:58:11 +01:00
Siegfried Pammer 7218a63a46 #3367: Extend range check to support negative integers. 2025-01-15 21:10:19 +01:00
Siegfried Pammer b9f50901a4 Fix #3367: Add extra validation to TransformDecimalCtorToConstant to prevent crashes with obfuscated assemblies. 2025-01-13 19:35:44 +01:00
Christoph Wille 507da701e7 Set VersionName for release 2025-01-12 07:55:23 +01:00
Christoph Wille 1263f48dc0 Use Microsoft.Sbom.Targets in Decompiler, BamlDecompiler and ILSpyX NuGets (#3346)
https://github.com/microsoft/sbom-tool/tree/main/src/Microsoft.Sbom.Targets to embed SBOM

* GeneratePackageOnBuild removed, build action now has a new step for dotnet pack
* Decompiler, BamlDecompiler and ILSpyX include SBOM
2025-01-10 20:44:36 +01:00
Siegfried Pammer ae776716dd Fix #3181: missing type information on NullReferenceExpression used with nullable value types. 2025-01-08 20:21:45 +01:00
Siegfried Pammer 7c6f7fea05 Make sure that there is only one applicable implicit conversion when dealing with switch, otherwise use an explicit cast. 2025-01-05 20:22:44 +01:00
Siegfried Pammer e1e2f739f6 Fix switch-on-string transform for optimized Roslyn. 2025-01-05 20:21:15 +01:00