Siegfried Pammer
cf23d76a5e
Add tests
2 months ago
Siegfried Pammer
7a8a978963
Add CompilerOptions.UseRoslyn4_14_0
3 months ago
Siegfried Pammer
a03f801cb7
Add failing test and test infrastructure adjustments to allow compiling referenced assemblies in one go.
4 months ago
Siegfried Pammer
35c88b048f
Rename test case to "ExtensionEverything"
4 months ago
Siegfried Pammer
2f8f753a8c
Allow nullable annotations in ExtensionProperties test case
8 months ago
Siegfried Pammer
94050a4aca
Rewrite TransformFieldAndConstructorInitializers from a step-by-step AST-based analysis to an analysis that tracks the whole constructor body.
8 months ago
ds5678
ad4a87b9a3
Improve inlining of boxed values
8 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
8 months ago
ds5678
dc3ed43dd8
Do not create object initializers for tuples
9 months ago
ds5678
c54318173b
Fix lower case type name conflicting with variable name
9 months ago
ds5678
1d964bce8e
Fix regression in decompiling local functions with default parameters
10 months ago
Maximilian Schmöcker
43bfaba7e0
Add ExpandParamsArguments DecompilerSettings
11 months ago
Maximilian Schmöcker
850ffe593d
Fix methods with mandatory arguments ignore disabled OptionalArguments setting
11 months ago
Siegfried Pammer
685f21edb5
C# 14 extensions: Add initial test case
11 months ago
Jan Jones
2357d00939
Support `allows ref struct` constraint
12 months ago
ds5678
586c04d081
Support params keyword on non-array collections
1 year ago
Siegfried Pammer
f673b7caa2
Add support for using different editions of .NET in unit tests
1 year ago
Siegfried Pammer
79f7a188b0
Add support for C# 12 inline array expressions
1 year ago
ds5678
361bb17618
Add configuration option to check for overflow and underflow
1 year ago
Jeremy Pritts
aff9649711
Parenthesize interpolations containing `global::` ( #3463 )
...
* Parenthesize interpolations containing global::
* Improvements:
* Cleaner output
* More unit testing
* More efficient tree search
* Implement revisions
* Update Lambda1 to be invariant
* Visit descendents before deciding whether or not to parenthesize an interpolation expression
* Rename local function
* Remove branch for conditional expressions
* Handle Lambda expressions without a block body
* Check for parenthesized expressions
* `NET60` instead of `!NET40`
1 year ago
ds5678
d75da053a8
Use type hint in pointer arithmetic when appropriate
1 year ago
Siegfried Pammer
453fc06e02
Fix #3406 : Wrong decompilation of record struct without primary constructor.
1 year ago
ds5678
7f024de786
Don't include generic constraints in generated explicit overrides
1 year ago
Siegfried Pammer
7d0262d779
Fix #3439 : Regressed decompilation of variables in lambda scope
1 year ago
Siegfried Pammer
ffcd468d22
Fix #1572 : parameters of lambdas and local functions are renamed, if there are with names from outer scopes collisions.
1 year ago
Siegfried Pammer
2c419f68cf
Fix #3322 : Add missing checks for equality comparison
1 year ago
Siegfried Pammer
58e993d71d
Fix #3272 : Missing variable declarations in repeated nested for-loops
2 years ago
Christoph Wille
c940cbc1d9
Add TestsAssemblyOutput, keep existing behavior of output assembly locations
2 years ago
Christoph Wille
fba0dbae8d
Migrate to NUnit 4 ( #3132 )
...
* Migrate to NUnit 4 based on https://docs.nunit.org/articles/nunit/release-notes/Nunit4.0-MigrationGuide.html . Needed fix for https://github.com/nunit/nunit/issues/4564
* Test 4.1.0-adev.1 from NUnit MyGet feed (works locally in VS)
* Update to bugfix version adev.2 (works on GH)
* NUnit 4.0.1 final
3 years ago
Daniel Grunwald
eab2534563
Add test case for user defined operators
3 years ago
Daniel Grunwald
475f2b3c28
Fix "ref readonly" fields.
3 years ago
Daniel Grunwald
9abc2b90da
Fix interaction of C# 11 nint==IntPtr with overload resolution.
...
In C# 11+.NET 7 mode, we now always use type nint, never IntPtr, so that overload resolution works as expected.
3 years ago
Daniel Grunwald
efeaf1356f
Add feature: C#11 nint without NativeIntegerAttribute
...
Because it is no longer possible to distinguish IntPtr from nint, this required a lot of testcase adjustment.
3 years ago
ElektroKill
7c76bc4bc9
Enable Tuple pretty test for Roslyn version
...
DefaultInterpolatedStringHandler is supported since commit f695bbc
4 years ago
Daniel Grunwald
1339eba016
C# 11 is no longer in preview.
4 years ago
Daniel Grunwald
afeeea7cf2
Replace roslynLatestOnlyOptions with roslyn3OrNewerOptions/roslyn4OrNewerOptions.
...
Existing "latest only" markers on old tests becomes unnecessarily restrictive as new roslyn versions are released.
4 years ago
Siegfried Pammer
ae0e83f0c4
Records: Support new EqualityContract pattern.
4 years ago
Siegfried Pammer
b87f3753e2
Fix #2786 : Structs with static reference type fields not recognized as unmanaged
4 years ago
Siegfried Pammer
6139d9d58e
Delete created temp files if test execution was successful.
4 years ago
Siegfried Pammer
f695bbcf3a
Add support for DefaultInterpolatedStringHandler
4 years ago
Siegfried Pammer
e61f46c474
Add MethodCodeType argument to MethodImplAttribute.
4 years ago
Siegfried Pammer
9e462b53ad
Add support for C# 11 parameter null checks
4 years ago
Daniel Grunwald
a9f4694563
Add test for C# 11 generic attribute
4 years ago
Siegfried Pammer
44dee6ecc2
Add additional tests for .NET 4.0
4 years ago
Siegfried Pammer
e4b63f7a35
- Make all tests async.
...
- Use custom test runner for correctness tests.
- Use .NET 6.0 framework for all Roslyn compiler tests.
- Disabled tests involving new string interpolation patterns.
4 years ago
Siegfried Pammer
9e54b44b11
Move ILSpy to net6.0-windows
4 years ago
Siegfried Pammer
15f49c0079
Add basic support for abstract static members in interfaces.
5 years ago
Siegfried Pammer
c987eb66cd
Add struct test case.
5 years ago
Siegfried Pammer
d8bb40b45b
Generate file-scoped namespace declarations, if possible.
5 years ago
Siegfried Pammer
7b3940a818
Add test configuration for mcs 5.23.0
5 years ago