Siegfried Pammer
e42ee2428f
Remove warnings in test cases.
10 months ago
ds5678
83df0ab9b9
Handle multiple calling conventions at once
10 months 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.
10 months ago
Siegfried Pammer
d70a5e7fb2
Fix #3626 : Do not emit named arguments for bool constants, if it causes the call to become ambiguous.
10 months ago
Siegfried Pammer
3fd9981535
Fix #3621 : Fix multiple uses of primary ctor parameter in initializer of record.
10 months ago
Siegfried Pammer
c34cc100b6
Records: Exclude static members from copy constructor check
10 months ago
Siegfried Pammer
2271229b23
Fix #3618 : Extend validation of declared members and ctor parameters
10 months ago
Siegfried Pammer
396b58031b
Add support for C# 14 first-class span types in the type system.
10 months ago
Siegfried Pammer
2f8f753a8c
Allow nullable annotations in ExtensionProperties test case
10 months ago
mmusu3
22ceb6e7d1
Fix remaining cases with changes to IntroduceUsingDeclarations.
10 months ago
Siegfried Pammer
94050a4aca
Rewrite TransformFieldAndConstructorInitializers from a step-by-step AST-based analysis to an analysis that tracks the whole constructor body.
10 months ago
ds5678
ad4a87b9a3
Improve inlining of boxed values
10 months ago
Siegfried Pammer
cb48768b6d
Fix #3610 : Add more primary constructor test cases.
10 months ago
Siegfried Pammer
46c99f1a21
Fix #3452 : More bugs with primary constructors.
10 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
10 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.
11 months ago
Siegfried Pammer
f6c763e7bb
Add tests for ExtensionEncodingV1 and ExtensionEncodingV2.
11 months ago
Siegfried Pammer
126e870a5a
Fix #3577 : Properly infer the switch governing type and preserve conversions
11 months ago
Siegfried Pammer
c075f7b9c8
Fix out var for expressions appearing in a lambda and not in a statement.
11 months ago
Siegfried Pammer
b403b7bb3d
Fix #3542 : Invalid explicit cast for implicit conversion to generic struct with interface type constraint
11 months ago
Daniel Grunwald
d13835e2cc
Add test for "params scoped Span'.
11 months ago
ds5678
dc3ed43dd8
Do not create object initializers for tuples
12 months ago
Siegfried Pammer
7b03606402
Fix #3575 : Uses of compiler-generated events getting swapped with non-generated events of same type
12 months ago
ds5678
fafc434133
Formatting
12 months ago
ds5678
d793781eea
Remove obsolete tests
12 months ago
ds5678
6fb6b63a2c
Fix ugly test
12 months ago
ds5678
c54318173b
Fix lower case type name conflicting with variable name
12 months ago
ds5678
1d964bce8e
Fix regression in decompiling local functions with default parameters
1 year ago
Jeremy Pritts
d1dc7b258a
Copy-propagate the stack slot for collection initializers ( #3554 )
...
* Copy-propagate the stack slot for collection initializers
* Use pattern matching
1 year ago
Siegfried Pammer
e34db06a67
Fix #3543 : Missing parentheses around field assignment expression in list initializers
1 year ago
Siegfried Pammer
3442fad4a0
Fix #3545 : Covariant return not detected for abstract override property
1 year ago
Peter Crabtree
e1e16b64f5
dev: Strip BOM mark from text files
1 year ago
Daniel Grunwald
ec58d57875
#3465 : Fix bugs in `comp.o` handling.
1 year ago
Daniel Grunwald
89083eaf48
Fix #3344 : Add support for the `ckfinite` opcode.
1 year ago
Daniel Grunwald
83298210e4
#3518 : Add tests that try unboxing to the wrong type in a number of different ways.
1 year ago
Daniel Grunwald
5fb2385671
Fix compiler warnings.
1 year ago
ds5678
f860777206
Add preprocessor directive
1 year ago
ds5678
15223daabd
WIP preincrement improvements
1 year ago
Siegfried Pammer
052466fce7
Add test case
1 year 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
1 year ago
Maximilian Schmöcker
43bfaba7e0
Add ExpandParamsArguments DecompilerSettings
1 year ago
Maximilian Schmöcker
850ffe593d
Fix methods with mandatory arguments ignore disabled OptionalArguments setting
1 year ago
Siegfried Pammer
3b0939d99c
Add ExtensionInfo: mapping of extension members to extension implementations and more.
1 year ago
Siegfried Pammer
68ae8ae833
Rename ITypeDefinition.HasExtensionMethods to ITypeDefinition.HasExtensions
1 year ago
Siegfried Pammer
685f21edb5
C# 14 extensions: Add initial test case
1 year ago
Siegfried Pammer
c642678f7f
Remove ToTypeReference: Implement ParseReflectionName with SRM TypeName.
1 year ago
Siegfried Pammer
33e497eb80
Refactor ParseReflectionName to return IType instead of ITypeReference
1 year ago
Siegfried Pammer
e56f12cf93
Fix #2165 : DeclareVariables step must update ResolveResult annotation when using out var.
1 year ago
Siegfried Pammer
6955704172
Updated CSharpConversions according to https://github.com/dotnet/csharpstandard/blob/draft-v9/standard/conversions.md
1 year 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.
1 year ago