Siegfried Pammer
6096b7df29
#907 : CallBuilder: If type arguments cannot be inferred from the parameter list, add them before asking overload resolution, but remove them again, if it does not reduce the number of casts.
7 years ago
Siegfried Pammer
d04155132a
Use overload resolution to add only required casts to collection initializers.
7 years ago
Siegfried Pammer
a823d74004
Use overload resolution to ensure we call the correct indexer + added tests.
7 years ago
Siegfried Pammer
cf8bee2c01
Fix translation of generic and extension 'Add' methods in collection initializers.
7 years ago
Siegfried Pammer
58f7296986
Add CustomAttributeConflicts test
7 years ago
Siegfried Pammer
bb38ae2fd8
Rearrange pretty tests, so that they work with Roslyn compilers as well.
7 years ago
Siegfried Pammer
8cbf724901
Move CustomAttributeTests to PrettyTestRunner
7 years ago
Siegfried Pammer
5856df001a
Fix #1111 : Only hide "enum value initializers" when all of them can be hidden or only the first needs to be specified.
7 years ago
Siegfried Pammer
054216359e
Fix #1174 : Add some test cases to TupleTests.
7 years ago
Daniel Grunwald
4b96f48d87
Cosmetic changes during review of PR #1176
7 years ago
Chicken-Bones
9937302313
Improve control flow decompilation with some compilers
Add a ControlFlowSimplification step after SplitVariables
Enable dead code removal in some unit tests
7 years ago
Chicken-Bones
3fb7c71f8a
Improve control flow decompilation in ConditionDetection
7 years ago
Siegfried Pammer
74fc5ba8a4
Add more test cases
7 years ago
Siegfried Pammer
3d4e38ddce
Fix #538 : Give higher priority to out parameters when naming variables
7 years ago
Siegfried Pammer
78e81bee29
Add more dynamic tests
7 years ago
Siegfried Pammer
d0683afec4
System.Activator.CreateInstance<T>() -> new T() transform is only valid if T has new() constraint.
7 years ago
Siegfried Pammer
028cbe69a4
Fix decompilation of auto properties with explicit implementation
7 years ago
Siegfried Pammer
e933abb67f
Update dynamic tests
7 years ago
Siegfried Pammer
9fa5249afe
Update dynamic test cases
7 years ago
Siegfried Pammer
569434d516
Fix #1162 : decompilation of explicitly implemented events and properties
7 years ago
Siegfried Pammer
8f47e8429b
Fix #1157 : Decompilation of abstract events and overridden auto events
7 years ago
Siegfried Pammer
51e0aab6c8
Add more tests
7 years ago
Daniel Grunwald
e718d45f7d
Use tabs in dynamic tests.
7 years ago
Daniel Grunwald
6886d2f753
Add support for ?. operator on dynamic.
7 years ago
Daniel Grunwald
f86bec4e0c
Move named arguments to its own transform.
Like other statement transforms that build inline blocks, it's
important that the named argument transform runs after the
ExpressionTransforms.
7 years ago
Daniel Grunwald
dd92499ade
Add test case for named arguments.
7 years ago
Andreas Weizel
16b00bfabc
Added DynamicTests.
7 years ago
Daniel Grunwald
5cdd5ecdbc
Use target typing for tuples, where possible.
7 years ago
Siegfried Pammer
497de76a2f
Update test case for #1145
7 years ago
Siegfried Pammer
1646be7482
#1145 : Make type arguments optional in mcs auto event pattern.
7 years ago
Siegfried Pammer
e012fe04be
Fix #1146 : C#3+ property accessor generates bad "[field: " tag on the accessor
7 years ago
Daniel Grunwald
50509c4985
Fix #1140 : Fix assertion when finally block unconditionally throws an exception.
7 years ago
Siegfried Pammer
bd15d69ada
Add test cases for #1138
7 years ago
Daniel Grunwald
92b72c9570
Type system: add support for tuple conversions.
7 years ago
Daniel Grunwald
469501210c
Add support for C# 7 tuple types:
* Use tuple literals instead of calling 'new ValueTuple<..>' constructor
* Where available, use element names for field access
* Make CallBuilder aware of tuple-name/dynamic type erasure, to avoid introducing casts when the types differ only in the tuple element names.
* Make CallBuilder provide a ResolveResult with the correct C# return type for the resulting expression.
Previously we were using the type-erased return type from the IL.
* Fix a bug that caused us to introduce returning casts when accessing an indexer.
7 years ago
Daniel Grunwald
395bc185a3
Decompile TupleElementNamesAttribute into tuple type syntax.
7 years ago
Daniel Grunwald
d78d423d10
Add tuple types to type system and syntax tree.
7 years ago
Daniel Grunwald
58dfd70855
Revive NR ConversionTests
7 years ago
Siegfried Pammer
69fdc55b41
Add support for C# 7.3 Attributes on backing fields: Allows [field: …] attributes on an auto-implemented property to target its backing field.
7 years ago
Daniel Grunwald
f4bbd100b9
Fix user-defined op_Addition 'p += 1;' being turned into 'p++;'
7 years ago
Siegfried Pammer
644941d25b
Fix C# 1.0 switch on string transform and add tests
7 years ago
Siegfried Pammer
f4b2c83f1e
Add test cases for UserDefinedCompoundAssign
7 years ago
Daniel Grunwald
75a627d40b
Don't use compound assignment when the RHS value does not fit into the LHS type.
7 years ago
Daniel Grunwald
ceb2b69798
Update the Roslyn compiler for the tests to 2.8.0.
7 years ago
Daniel Grunwald
b2197b2f95
Regenerate all IL test cases.
This removes non-deterministic and system-dependent info from the files, so that in the future,
diffs should only show relevant changes.
7 years ago
Daniel Grunwald
d87820e226
Avoid redundant explicit boxing casts
7 years ago
Daniel Grunwald
80e191ae03
Fix missing 'base.' qualifier on non-virtual call to virtual base method.
7 years ago
Chicken-Bones
16e12dfb1a
Add base. resolution to QualifierTests
7 years ago
Chicken-Bones
dc58a1b40c
Include "base." qualifier as needed ( fixes #1123 )
Adds BaseReferenceExpression to ThisReferenceExpression target required checks
7 years ago
Siegfried Pammer
271379ec27
#1088 : Add workaround for exception from Cecil
7 years ago