Siegfried Pammer
e42ee2428f
Remove warnings in test cases.
1 month ago
ds5678
83df0ab9b9
Handle multiple calling conventions at once
1 month ago
ds5678
a04c0e4cab
Improve decompilation of unmanaged function pointers
...
This improves how function pointers are decompiled.
* ExpressionBuilder::VisitLdFtn now properly constructs the calling conventions.
* FunctionPointerType::FromSignature now checks whether a modopt type affects the calling convention.
1 month ago
Siegfried Pammer
d70a5e7fb2
Fix #3626 : Do not emit named arguments for bool constants, if it causes the call to become ambiguous.
1 month ago
Siegfried Pammer
3fd9981535
Fix #3621 : Fix multiple uses of primary ctor parameter in initializer of record.
1 month ago
Siegfried Pammer
c34cc100b6
Records: Exclude static members from copy constructor check
1 month ago
Siegfried Pammer
2271229b23
Fix #3618 : Extend validation of declared members and ctor parameters
1 month ago
Siegfried Pammer
396b58031b
Add support for C# 14 first-class span types in the type system.
1 month ago
Siegfried Pammer
2f8f753a8c
Allow nullable annotations in ExtensionProperties test case
1 month ago
mmusu3
22ceb6e7d1
Fix remaining cases with changes to IntroduceUsingDeclarations.
1 month ago
Siegfried Pammer
94050a4aca
Rewrite TransformFieldAndConstructorInitializers from a step-by-step AST-based analysis to an analysis that tracks the whole constructor body.
1 month ago
ds5678
ad4a87b9a3
Improve inlining of boxed values
2 months ago
Siegfried Pammer
cb48768b6d
Fix #3610 : Add more primary constructor test cases.
2 months ago
Siegfried Pammer
46c99f1a21
Fix #3452 : More bugs with primary constructors.
2 months ago
Siegfried Pammer
9c8d1e48d9
Many thanks to @sonyps5201314 for providing the test cases and a suggested fix, which inspired these changes.
...
Various improvements regarding primary constructor decompilation, including:
- introduce `HasPrimaryConstructor` property in the AST, as there is a difference between no primary constructor and a parameterless primary constructor
- improved support for inherited records and forwarded ctor calls
- exclude non-public fields and properties in IsPrintedMember
- introduce an option to always make the decompiler emit primary constructors, when possible
2 months ago
Siegfried Pammer
588c243929
#3593 : ObjectInitializers: allow castclass instructions wrapping the init instruction to support the pattern used for covariant returns on non-supporting platforms such as .NET 4.x.
2 months ago
Siegfried Pammer
f6c763e7bb
Add tests for ExtensionEncodingV1 and ExtensionEncodingV2.
2 months ago
Siegfried Pammer
126e870a5a
Fix #3577 : Properly infer the switch governing type and preserve conversions
3 months ago
Siegfried Pammer
c075f7b9c8
Fix out var for expressions appearing in a lambda and not in a statement.
3 months ago
Siegfried Pammer
b403b7bb3d
Fix #3542 : Invalid explicit cast for implicit conversion to generic struct with interface type constraint
3 months ago
Daniel Grunwald
d13835e2cc
Add test for "params scoped Span'.
3 months ago
ds5678
dc3ed43dd8
Do not create object initializers for tuples
3 months ago
Siegfried Pammer
7b03606402
Fix #3575 : Uses of compiler-generated events getting swapped with non-generated events of same type
3 months ago
ds5678
fafc434133
Formatting
3 months ago
ds5678
d793781eea
Remove obsolete tests
3 months ago
ds5678
6fb6b63a2c
Fix ugly test
3 months ago
ds5678
c54318173b
Fix lower case type name conflicting with variable name
3 months ago
ds5678
1d964bce8e
Fix regression in decompiling local functions with default parameters
4 months ago
Jeremy Pritts
d1dc7b258a
Copy-propagate the stack slot for collection initializers ( #3554 )
...
* Copy-propagate the stack slot for collection initializers
* Use pattern matching
4 months ago
Siegfried Pammer
e34db06a67
Fix #3543 : Missing parentheses around field assignment expression in list initializers
4 months ago
Siegfried Pammer
3442fad4a0
Fix #3545 : Covariant return not detected for abstract override property
4 months ago
Peter Crabtree
e1e16b64f5
dev: Strip BOM mark from text files
4 months ago
Daniel Grunwald
ec58d57875
#3465 : Fix bugs in `comp.o` handling.
4 months ago
Daniel Grunwald
89083eaf48
Fix #3344 : Add support for the `ckfinite` opcode.
4 months ago
Daniel Grunwald
83298210e4
#3518 : Add tests that try unboxing to the wrong type in a number of different ways.
4 months ago
Daniel Grunwald
5fb2385671
Fix compiler warnings.
4 months ago
ds5678
f860777206
Add preprocessor directive
5 months ago
ds5678
15223daabd
WIP preincrement improvements
5 months ago
Siegfried Pammer
052466fce7
Add test case
5 months ago
Christoph Wille
afcdcec146
Update for .NET 10 Preview 7 packages ( #3537 )
...
* Update NUnit (was: 4.3.2) to 4.4 and MTP (was: 1.7.3) to 1.8.1 (had to add VSTestBridge explicitly to override ref complaints by compiler)
* Update to .NET 10 Preview 7 NuGet packages
* Update dotnet-format
5 months ago
Maximilian Schmöcker
43bfaba7e0
Add ExpandParamsArguments DecompilerSettings
5 months ago
Maximilian Schmöcker
850ffe593d
Fix methods with mandatory arguments ignore disabled OptionalArguments setting
5 months ago
Siegfried Pammer
3b0939d99c
Add ExtensionInfo: mapping of extension members to extension implementations and more.
5 months ago
Siegfried Pammer
68ae8ae833
Rename ITypeDefinition.HasExtensionMethods to ITypeDefinition.HasExtensions
5 months ago
Siegfried Pammer
685f21edb5
C# 14 extensions: Add initial test case
5 months ago
Siegfried Pammer
c642678f7f
Remove ToTypeReference: Implement ParseReflectionName with SRM TypeName.
5 months ago
Siegfried Pammer
33e497eb80
Refactor ParseReflectionName to return IType instead of ITypeReference
5 months ago
Siegfried Pammer
e56f12cf93
Fix #2165 : DeclareVariables step must update ResolveResult annotation when using out var.
5 months ago
Siegfried Pammer
6955704172
Updated CSharpConversions according to https://github.com/dotnet/csharpstandard/blob/draft-v9/standard/conversions.md
5 months ago
Daniel Grunwald
90cd265e89
Update System.Reflection.Metadata dependency to 9.0.0.
...
Add explicit System.Security.Cryptography.Pkcs dependency to avoid security vulnerability warning in ILSpyCmd.
Suppress security vulnerability warnings in test projects.
5 months ago