Daniel Grunwald
ba8b453b36
Fix #1404 : local variables with init flag are not declared in the correct scope
7 years ago
Siegfried Pammer
ee151eb706
#1407 : Set CSharpInvocationResolveResult.IsExtensionMethodInvocation flag after extension methods transform.
7 years ago
Siegfried Pammer
1d2cd930de
Add LetIdentifierAnnotation to allow linking of let variables.
7 years ago
Siegfried Pammer
17f42066a0
Fix #1378 : Missing unsafe modifier for static fields
7 years ago
Siegfried Pammer
9487d0a714
Make pattern in TryRemoveTransparentIdentifier more flexible. Allow multiple let expressions per anonymous type declaration.
7 years ago
Siegfried Pammer
32cec2a1fb
Fix traversal bug in DecompileQueries: expressions with independent sub-expressions like conditional-expressions, binary operators or parameter lists were not handled correctly.
7 years ago
Siegfried Pammer
224b183e98
Fix IntroduceUnsafeModifier.VisitStackAllocExpression: size expression might contain pointer type or resolve result might be null.
7 years ago
Siegfried Pammer
0dac55d584
Add transformation for stackalloc to Span<T>.
7 years ago
Siegfried Pammer
b18653ba82
Fix #1319 : Property name collides with variable name
7 years ago
Siegfried Pammer
d469edbf2a
Fix initialization order of destructorBodyPattern and destructorPattern.
7 years ago
Siegfried Pammer
2bcafb8c4f
Fix #1247 : Empty destructors are not decompiled correctly
7 years ago
Siegfried Pammer
0fc5c8b988
Add support for FormattableString patterns.
7 years ago
Andrey Shchekin
d15fe0f254
Fixed bug with decimal optional parameters not being resolved correctly.
...
Added option to uglify presentation of decimal constants (show `[DecimalConstant(...)]`).
7 years ago
Siegfried Pammer
1104b29d26
Fix #1228 : SequencePointBuilder: Assertion failed: missing endLocation
7 years ago
Siegfried Pammer
71ffb0183b
Fix #1103 : Deactivating "Insert using declarations" now uses fully qualified types everywhere.
7 years ago
Daniel Grunwald
bafb6d1d49
Fix #1194 : empty if statements are decompiled into goto statements
7 years ago
Daniel Grunwald
b396d203bd
Merge IDecompilerTypeSystem with ICompilation.
7 years ago
Daniel Grunwald
1f3916d554
Use the resolve methods in MetadataModule, and remove the wrappers in DecompilerTypeSystem.
7 years ago
Daniel Grunwald
796612209d
Fix #1147 : Use C# 7.3 syntax for ref reassignment.
7 years ago
Daniel Grunwald
3b46776c5e
Rename IAssembly -> IModule.
...
While support for multi-module assemblies isn't fully working yet; it is clear at this point that we want
to treat each module in a multi-module assembly separately for the purposes of the type system.
7 years ago
Daniel Grunwald
3be697eadf
Rewrite MinimalCorlib without using the unresolved TS.
7 years ago
Siegfried Pammer
85c83b8e6f
Fix #1052 : Use IDocumentationProvider in the CSharpDecompiler API
7 years ago
Daniel Grunwald
4ec0028356
Don't cache attributes in the type system.
7 years ago
Siegfried Pammer
9acc372a68
Use TypeSystem for ILSpy UI:
...
Most important tree nodes and search ported,
Currently only ILLanguage is active
7 years ago
Siegfried Pammer
069e4072de
Fix compile errors after merge.
7 years ago
Siegfried Pammer
10a0c9093c
Do not convert extension method syntax to LINQ, if the null conditional operator is used on the target, as this introduces a syntax error.
7 years ago
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
cf8bee2c01
Fix translation of generic and extension 'Add' methods in collection initializers.
7 years ago
Siegfried Pammer
c7c3801ff1
Add TypeSystemAstBuilder.ConvertAttributeType, which deals with all the special cases when referring to attribute types in attribute context.
7 years ago
Daniel Grunwald
fa2df4df26
Clean up type system interfaces.
7 years ago
Siegfried Pammer
023282a50d
#1180 : Add IsWindowsFormsInitializeComponentMethod and disable some transforms when processing a Windows Forms InitializeComponent method.
7 years ago
Siegfried Pammer
9f883177da
Reset context after PrettifyAssignments.Run
8 years ago
Siegfried Pammer
d0683afec4
System.Activator.CreateInstance<T>() -> new T() transform is only valid if T has new() constraint.
8 years ago
Siegfried Pammer
028cbe69a4
Fix decompilation of auto properties with explicit implementation
8 years ago
Siegfried Pammer
569434d516
Fix #1162 : decompilation of explicitly implemented events and properties
8 years ago
Siegfried Pammer
0a992d2158
Fix build.
8 years ago
Siegfried Pammer
8f47e8429b
Fix #1157 : Decompilation of abstract events and overridden auto events
8 years ago
Siegfried Pammer
62da416d6c
Fix PrettifyAssignments for dynamic expressions
8 years ago
Daniel Grunwald
21d3881e37
Introduce named arguments only in the statement transform.
...
Don't use extension method syntax when 'this' parameter of
extension method is named.
8 years ago
Siegfried Pammer
1646be7482
#1145 : Make type arguments optional in mcs auto event pattern.
8 years ago
Siegfried Pammer
e012fe04be
Fix #1146 : C#3+ property accessor generates bad "[field: " tag on the accessor
8 years ago
Siegfried Pammer
ad06a01441
Fix #1117 : NullReferenceException at Transforms.PatternStatementTransform.TransformForeachOnArray
8 years ago
Siegfried Pammer
bb67948844
Fix remaining compile errors after merge.
8 years ago
Siegfried Pammer
458f448fae
Avoid unnecessary allocations of MetadataReader and clean up Dom structs a bit.
8 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.
8 years ago
Daniel Grunwald
f4bbd100b9
Fix user-defined op_Addition 'p += 1;' being turned into 'p++;'
8 years ago
Siegfried Pammer
504fe200b6
Fix #1131 : Add a few safety null checks in TransformForeachOnMultiDimArray
8 years ago
Siegfried Pammer
e7c38b6cbd
Fix bug in PrettifyAssignments: did not convert +=/-= 1 on non-int expressions.
8 years ago
Daniel Grunwald
75a627d40b
Don't use compound assignment when the RHS value does not fit into the LHS type.
8 years ago
Siegfried Pammer
d10ba668e1
Comment dead code
8 years ago