Siegfried Pammer
23f118ac93
Fix incorrect display of constructors in tree view.
7 years ago
Siegfried Pammer
acd4f0b182
Fix incorrect results in TypeExposedByAnalyzer and TypeUsedByAnalyzer
7 years ago
Siegfried Pammer
1ff5353907
Add includeNamespaceOfDeclaringTypeName to ToString methods in Language.
7 years ago
Siegfried Pammer
3b1ad6a69c
Fix bugs in TypeUsedByAnalyzer, MethodUsedByAnalyzer and others.
7 years ago
Siegfried Pammer
b82f4dd773
Fix #1206 : Could not decode attribute arguments. There was a bug in the calculation of public key tokens of assembly definitions.
7 years ago
Siegfried Pammer
0464b1a02d
Clean up of IAnalyzer API.
7 years ago
Siegfried Pammer
79611d5976
Fix search on ctors and always show full signature in search result. This should help to find the right overload more easily.
7 years ago
Siegfried Pammer
c883f68842
Remove unused TypeSystemHelper.cs
7 years ago
Siegfried Pammer
0b498df891
Fix performance of SearchStrategies.
7 years ago
Christoph Wille
5efd336dcc
Add VS2017 extension to README.MD Closes #1171
7 years ago
Daniel Grunwald
238d2900a8
Merge branch 'split-variables'
7 years ago
Daniel Grunwald
61f4bb4071
Merge pull request #1030 : Replace Mono.Cecil with System.Reflection.Metadata
This PR ports ILSpy to System.Reflection.Metadata.
It also contains a whole bunch of changes to our own high-level decompiler type system.
For more details, see https://github.com/icsharpcode/ILSpy/wiki/srm
7 years ago
Daniel Grunwald
90d866d78a
Fix #1193 : Performance issues with deeply nested block structures
7 years ago
Daniel Grunwald
bafb6d1d49
Fix #1194 : empty if statements are decompiled into goto statements
7 years ago
Daniel Grunwald
7f84bcfbb5
Upgrade DiffLib.
The old version had a bug that caused tests to fail when the last method in a test file was surrounded by #if/#endif.
7 years ago
Daniel Grunwald
b4dd917949
Avoid copying resources into managed memory.
7 years ago
Daniel Grunwald
2d04f24670
Fix stack overflow in RequiredNamespaceCollector.
7 years ago
Siegfried Pammer
5faead453c
Fix build of BAML decompiler.
7 years ago
Siegfried Pammer
7f57080672
simplify GetLanguageSpecificName
7 years ago
Siegfried Pammer
58c2746e60
LiteralSearchStrategy: implement support for field constants.
7 years ago
Siegfried Pammer
7ded12c5fb
Reimplement search strategies.
7 years ago
Siegfried Pammer
f4733307f4
Move search-related files to Search subfolder.
7 years ago
Daniel Grunwald
d8c8a75c2e
Fix #1154 : Decompilation of fixed statement when pointer variable is unused
7 years ago
Daniel Grunwald
ab157b2fc0
Add TypeSystemOptions.Uncached.
7 years ago
Daniel Grunwald
b750a30be4
Fix MethodUsesAnalyzer.
7 years ago
Daniel Grunwald
de3ffa2851
Adjust ILSpy to type system changes.
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
c54632e7cb
Fix some type system bugs.
7 years ago
Daniel Grunwald
107fe5eb1c
Eliminate SpecializingDecompilerTypeSystem and use GenericContext instead.
7 years ago
Daniel Grunwald
fdc109eebd
Fix NullReferenceException in TypeSystemAstBuilder when attribute argument decoding fails.
7 years ago
Siegfried Pammer
463494e3fa
Delete files not included in ILSpy.csproj from the repository.
7 years ago
Siegfried Pammer
dccd0052dc
Merge XmlDocKeyProvider.cs into IdStringProvider.cs
7 years ago
Siegfried Pammer
b6e88c4bbb
Handle EnumUnderlyingTypeResolveException in CustomAttribute.DecodeValue()
7 years ago
Daniel Grunwald
4580eab7ab
Disable ref inline assignments.
This increases the chances that we'll avoid CS8174: A declaration of a by-reference variable must have an initializer.
7 years ago
Daniel Grunwald
7ee686cb67
Allow splitting a variable even if it has its address taken and stored in a ref-local.
The currently implementation is somewhat minimal and only works in a very limited set of circumstances:
* the ref local is single-assignment
* the ref local is initialized directly with 'ldloca target; stloc ref_local',
not a derived pointer (e.g. 'ldloca target; ldflda F; stloc ref_local').
* all uses of the ref_local are immediately consuming the address
This improves variable splitting cases where the compiler re-uses a stack slot containing a reference,
e.g. in some cases of '?.' on Nullable<T>.
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
33ef82f75c
Fix #1082 : Add support for compound assignment with string.Concat().
Currently only supports the binary overloads of string.Concat().
7 years ago
Daniel Grunwald
d166101387
Allow splitting variables that have their address taken.
This works if all addresses are immediately used in calls (as common with method calls on value-type,
which take 'this' by-reference); as long as the call doesn't return the reference again.
Closes #1136 .
7 years ago
Daniel Grunwald
b149238777
Introduce IType.IsByRefLike.
7 years ago
Siegfried Pammer
6d1792652b
Fix #1178 : Ignore PDB load errors.
7 years ago
Siegfried Pammer
2e5ed08be4
Add information about debug info source to ILSpy UI.
7 years ago
Siegfried Pammer
8335615842
Add IDebugInfoProvider.Description property
7 years ago
Siegfried Pammer
29277eb94c
Add EnumUnderlyingTypeResolveException to TypeProvider.
7 years ago
Siegfried Pammer
20ccd51948
Fix bug in SwitchOnStringTransform.SimplifyCascadingIfStatements: Do not eliminate unrelated stores right before the start of the switch.
7 years ago
Siegfried Pammer
cb0629448d
CSharpDecompiler.GetCodeMappingInfo: Add support for async and yield fsms.
7 years ago
Siegfried Pammer
27cf62d710
Move CodeMappingInfo to Decompiler.
7 years ago
Siegfried Pammer
e3dd2f6d86
LookupIndexers should ignore explicit interface implementations.
7 years ago
Siegfried Pammer
ce855885b1
Implement new declsec parser in ReflectionDisassembler + added unit tests.
7 years ago