文煌
8152e40d5c
don't write HintPath for GAC assembly
5 years ago
Siegfried Pammer
e7cb27a134
Fix #2182 : Ensure that all labels generated by StatementBuilder are unique.
5 years ago
Siegfried Pammer
31b4e6ae6a
Fix #2185 : Fix MemberIsHidden-check for local function display structs: Async State Machines that looked like local function display structs were not hidden once local function decompilation was disabled. This led to code duplication in the generated pdb.
5 years ago
Daniel Grunwald
80cf72e498
#2182 : Move "Transform call to struct constructor" from EarlyExpressionTransforms to ILReader.
...
This fixes the evaluation order for such calls (and an assertion in StObj.CheckTargetSlot).
5 years ago
Siegfried Pammer
2530c9a2ce
#2182 : Do not inline switch value, in case variable is reused.
5 years ago
Daniel Grunwald
47685c4b57
Fix weird casts to `nint` when writing to fields of unknown type.
5 years ago
Daniel Grunwald
103a6461e4
Relax ExpressionBuilder invariant for lifted instructions with unknown result type.
5 years ago
Daniel Grunwald
a81714f707
Fix #2180 : Restrict the `(uint?)-1` special case to casts to integer types.
...
This avoids the risk of stack overflows when converting to an unexpected nullable type (such as `Nullable<UnknownType>`).
5 years ago
Siegfried Pammer
2612a06a11
Fix #2174 : Some compilers produce display class ctors with unused local variables
...
(cherry picked from commit 71b54e87a0
)
5 years ago
Siegfried Pammer
06243c8244
Fix #2177 : PDB Generation is confused by enhanced using statements
...
(cherry picked from commit 65a5af2c99
)
5 years ago
Siegfried Pammer
71b54e87a0
Fix #2174 : Some compilers produce display class ctors with unused local variables
5 years ago
Siegfried Pammer
65a5af2c99
Fix #2177 : PDB Generation is confused by enhanced using statements
5 years ago
Daniel Grunwald
6010757d22
Add support for .NET 5 custom calling conventions.
5 years ago
Daniel Grunwald
9b27ced6af
Avoid reference on ICSharpCode.Decompiler in VS AddIn.
...
This way we don't need to load SRM 5 within the VS process.
5 years ago
Daniel Grunwald
0eb5469374
Extract package version numbers to packages.props.
5 years ago
Christoph Wille
1ef136d6e6
Try upgrading to newer versions as per #2173 . MEF fails to initialize for System.Collections.Immutable (binding redirect?)
5 years ago
Kirill Osenkov
6d7a479e56
Remove link to non-existing file.
...
This breaks build incrementality (fast up-to-date check) thinks XML Documentation.html is missing so it decides to rebuild the project every time, even if nothing has changed.
5 years ago
Daniel Grunwald
03787bfc70
Avoid parentheses around lambdas where possible.
5 years ago
Siegfried Pammer
8e9ecf6c36
Fix #2162 : handle VariableInitializers like AssignmentExpressions in InsertParenthesesVisitor
5 years ago
Daniel Grunwald
8573c5282e
Avoid code duplication when disassembling signature headers.
5 years ago
Daniel Grunwald
6d3239678c
Function pointers: add support for the builtin unmanaged calling conventions.
5 years ago
Daniel Grunwald
5bbd34a53b
Function pointers are invocable.
5 years ago
Daniel Grunwald
6bcb26db70
Add option for `string.Concat` decompilation.
5 years ago
Daniel Grunwald
9381be2280
#2158 : Fix decompilation of arithmetic on managed pointers after ConversionKind.StartGCTracking.
5 years ago
Daniel Grunwald
a26a25d689
Fix #2158 : Remove PointerType support from CSharpResolver for additions/subtractions.
...
These have special semantics (number of elements in C# vs. number of bytes in IL), and so pointer arithmetic must go through the special HandlePointerArithmetic() code path --> the normal logic in HandleBinaryNumeric must not ever emit pointer arithmetic.
5 years ago
Daniel Grunwald
e8b35a481a
Fix #2156 : range syntax not being detected correctly in some cases
5 years ago
Siegfried Pammer
813cd1842f
#2156 : Enforce string type of string.to.int argument.
5 years ago
Siegfried Pammer
41edef710e
Fix build.
5 years ago
Siegfried Pammer
0b0a6d94a8
Add support for local function pointers.
5 years ago
Siegfried Pammer
13636c89cc
Add support for C# 9: foreach with GetEnumerator extension methods.
5 years ago
Siegfried Pammer
9afbcba79a
Fix #1796 : Use hexadecimal literals with bitwise operators.
5 years ago
Daniel Grunwald
0e1c24464f
Fix #2148 : Don't attempt to detect `fixed` statement for pinned value types
5 years ago
Daniel Grunwald
5c6b9897c1
Avoid redundant casts + adjust NoExtensionMethods ugly test.
5 years ago
Daniel Grunwald
b8796908f6
Fix some type inference issues with pointer types.
5 years ago
Daniel Grunwald
d13a8bb64d
Support `ldftn` in the context of a function pointer.
5 years ago
Daniel Grunwald
3831b42197
Properly support `calli` instruction and its interaction with function pointer types.
5 years ago
Daniel Grunwald
cabb02b5fd
Add support for decoding function pointer types in signatures.
5 years ago
Siegfried Pammer
5d244efab6
Fix #2149 : handle uninitialized fields of display classes as variables with HasInitialValue = true. Might happen in obfuscated code.
5 years ago
Siegfried Pammer
68af5c2dd7
#1796 : If TSAB.PrintIntegralValuesAsHex is set, do not use special constant fields.
5 years ago
Siegfried Pammer
9950708147
Add missing file header
5 years ago
Siegfried Pammer
549f7fb44d
Fix #2143 : Missing `this.` qualification in lambda
5 years ago
Siegfried Pammer
04f9603768
Fix #2140 : ILSpy 6.2p1 no longer respects "use discards" setting
5 years ago
Daniel Grunwald
3d10509b1b
Add SparseIntegerSwitch option.
5 years ago
Daniel Grunwald
5bd8c69a48
Disable transform for Span<T> initialization from field with RVA if "ArrayInitializers" setting is disabled.
...
https://github.com/ashmind/SharpLab/issues/542
5 years ago
Daniel Grunwald
bb99e9668a
Fix #2115 : Re-introduce the evaluation order bug #2050 when a language version <=C# 5 is selected.
5 years ago
Daniel Grunwald
7f915ad035
Add `OutVarResolveResult` to overload resolution (not yet used by CallBuilder)
5 years ago
Daniel Grunwald
c775d3a98f
Upgrade Roslyn version used for our tests (from 3.7.0 to 3.8.0-2.final) and adjust NativeInteger attribute decoding.
5 years ago
Daniel Grunwald
b035ec1960
Fix #2129 : be more flexible about the initialization order for the async state machine.
5 years ago
Siegfried Pammer
d8b1f1f8d2
Fix #2039 : "Could not convert BlockContainer to single expression" workaround produces uncompilable code - potentially unassigned variables.
5 years ago
Siegfried Pammer
6d06abae1f
Fix OutOfRangeException in CallBuilder.CanInferTypeArgumentsFromArguments
5 years ago