Siegfried Pammer
dd77f2ac50
Correct documentation and API definition of ITypeDefinition.EnumUnderlyingType: it should return null for non-enum types.
4 years ago
Siegfried Pammer
a0fb71abad
Fix EntityHandle.GetDeclaringType extension and add TypeSpecification.GetGenericType
4 years ago
Siegfried Pammer
8cc0bf8b49
Generalize FindTypeDecoder
4 years ago
Siegfried Pammer
1887412c46
Add ITypeDefinition.MetadataName
4 years ago
Siegfried Pammer
1efcfe4ae4
#2594 : Improve AssemblyListSnapshot: normalize all .NET Framework versions "v4.x" to "v4"
4 years ago
Siegfried Pammer
02d143c754
Optimize IsKnownType/IsKnownAttribute (see #1204 and #2594 )
4 years ago
Siegfried Pammer
db034d3048
Remove incomplete/wrong support for null-forgiving operator.
4 years ago
Siegfried Pammer
3c2e52854e
DetectPinnedRegions: Inline the stack-slot involved in CustomRefPinPattern so that the following ProcessPinnedRegion call can reuse existing unmanaged pointer variables instead of being forced to create a new variable.
4 years ago
Siegfried Pammer
f98012ec16
DetectPinnedRegions: Support special case where pinned pointer is unused and the compiler optimized out the StopGCTracking-conversion.
4 years ago
Siegfried Pammer
cbcfcf6c2a
IntroduceQueryExpressions: Do not ignore attributes on lambdas
4 years ago
Siegfried Pammer
406f537fbe
Ditch nuspec.template
4 years ago
Siegfried Pammer
5f73bfbb01
Fix Deconstruction for Deconstruct instance methods of value-types.
4 years ago
Siegfried Pammer
e726ae28a5
Fix type equality check in TransformCollectionAndObjectInitializers
4 years ago
Siegfried Pammer
50cfcc214c
DecompilerTypeSystem: Add support for implicit references
4 years ago
Siegfried Pammer
2de6e1fe30
Ignore nullability annotations when comparing types in the case of implicit conversions.
4 years ago
Siegfried Pammer
fe915780ad
Add AssemblyVersion to IModule
4 years ago
Siegfried Pammer
41c99e4727
#2622 : Fix crash in ExpressionBuilder when decompiling object initializer composed of readonly properties.
4 years ago
Christoph Wille
5ff81c25f8
Update (c) for 2022
4 years ago
Daniel Grunwald
db7d507138
Fix #2615 : Overflow check did not work reliably due to fp rounding error
4 years ago
Siegfried Pammer
d98ff730a0
Fix build.
4 years ago
Siegfried Pammer
4aa7f5fc38
Fix #2612 decompilation of newarr with int.MaxValue causes OOME in decompiler.
4 years ago
Siegfried Pammer
00a32e0575
Use AlwaysQualifyMemberReferences = true in Windows Forms InitializeComponent methods.
4 years ago
Siegfried Pammer
e823ed9966
#2594 : Cache LoadedAssembly.GetTargetFrameworkIdAsync, LoadedAssembly.GetRuntimePackAsync, PEFile.Name, PEFile.FullName to improve performance of assembly resolving. This improves performance of the analysis by a factor of 2.
4 years ago
Siegfried Pammer
2a7e9c1d78
#2590 : Fix printing of "Invalid MethodBodyBlock" comments. Make them appear between the braces of the block.
4 years ago
Siegfried Pammer
26183f798b
#2397 : Add TypeSystemExtensions.IsUnmanagedType
4 years ago
Christoph Wille
963a99d330
Update NuGet packages
4 years ago
Siegfried Pammer
518ade7523
Make GetReferenceAssemblyPath pick the closest available version.
4 years ago
David Wengier
52628a219a
Add TypeDefinitionDocuments to custom debug information data
4 years ago
Siegfried Pammer
2646265069
#2565 : Improve GetFileNameForResource: Assume that input is already a filename.
4 years ago
Siegfried Pammer
37456672d7
WholeProjectDecompiler: set segment length for Unix to 255.
4 years ago
Siegfried Pammer
a48f0d311c
Fix #2330 : Add conditional sub directory support
4 years ago
Siegfried Pammer
01e5e70bf7
'override' is only valid outside of interfaces.
4 years ago
Siegfried Pammer
15f49c0079
Add basic support for abstract static members in interfaces.
4 years ago
Siegfried Pammer
bf336d85cf
Fix second issue mentioned in #2565 : resource names such as path/to/file.ext are now properly handled as relative paths.
4 years ago
Siegfried Pammer
849161e362
- Replace DecompilerTextView.CleanUpName with direct uses of WholeProjectDecompiler.CleanUpFileName
...
- Add file extension handling to WholeProjectDecompiler.CleanUpName
- Add WholeProjectDecompiler.SanitizeFileName, which respects file extensions
4 years ago
Daniel Grunwald
787621fb51
Revert "Use Nop instead of InvalidExpression to hold the "goto from catch-block to try-block" comment"
...
This reverts commit 77dcbbee86 .
4 years ago
Daniel Grunwald
cedd8a6bf6
Fix #2480 : Avoid yield-return decompilation if there are unrecognized state assignments in a finally method.
4 years ago
Daniel Grunwald
77dcbbee86
Use Nop instead of InvalidExpression to hold the "goto from catch-block to try-block" comment
4 years ago
Daniel Grunwald
b404bf3aa7
#2480 : avoid crash if ILAst "cannot jump into block container" invariant is violated
4 years ago
Daniel Grunwald
f104233e78
Fix #2388 : Add support for branch from catch-block to try-block (VB `On Error Resume Next`)
4 years ago
Daniel Grunwald
8fb44414c9
Remove unused GenerateConvHelper
4 years ago
Siegfried Pammer
ec6a9afc57
Fix #2448 : Decompiler shows some enum values as hexdecimal instead of decimal
4 years ago
Daniel Grunwald
d0012bf7d8
StatementTransform: Run an expensive invariant check slightly less often.
4 years ago
Daniel Grunwald
9bbb944e97
Avoid crashing on invalid certain forms of invalid metadata (found in obfuscated assemblies)
4 years ago
Daniel Grunwald
47b12a1d9a
Fix #2317 : Crash in ExpressionBuilder.VisitStLoc when storing to a null pointer
4 years ago
Siegfried Pammer
f801059659
TDCU: make sure that copies of display-class variables are validated as well.
4 years ago
Siegfried Pammer
d8bb40b45b
Generate file-scoped namespace declarations, if possible.
4 years ago
Daniel Grunwald
8c508d9bbb
#2445 : Fix `1f/6f` getting printed as `355f / (678f * (float)Math.PI)`
...
Also fix inconsistent float comparisons due to JIT optimizations.
4 years ago
Daniel Grunwald
7f985757a7
Fix #2541 : Add explicit `unchecked()` around non-constant cast of constant to `nint`
4 years ago
Daniel Grunwald
17d323c943
Fix #2557 : Remove incorrect assertion from `ReduceNestingTransform`
...
ILFunctions can appear as statements when the source code has a lambda expression which is immediately discarded.
```
_ = (Action)delegate { ... };
```
4 years ago