Daniel Grunwald
21717f0fa4
Fixup array indices
8 years ago
Daniel Grunwald
8f36520f94
Fix unnecessary casts in newarr.
Revive the old TypeAnalysisTests.
8 years ago
Daniel Grunwald
9e38bcea5f
Avoid unnecessary casts for bitshifts.
8 years ago
Siegfried Pammer
53322a6ba7
Add ExpectedResultType to BlockContainer (default is StackType.Void)
8 years ago
Siegfried Pammer
2d1692c72f
Add value parameter to Leave ctor.
8 years ago
Siegfried Pammer
83fb9061b7
Fix dead code introduced by wrong merge.
8 years ago
Daniel Grunwald
513a01e4dd
Ignore non-void leave in ConditionDetection.
This fixes a slight regression in control flow prettyness introduced in 206cdecf30
8 years ago
Siegfried Pammer
206cdecf30
Merge Return instruction into Leave.
8 years ago
Siegfried Pammer
10a7e2edff
Fix #821 - Reload All Assemblies Should Point to the Correct Assembly
8 years ago
Siegfried Pammer
01660c4780
[catch-when] ILReader: add special case for exception filters: since eh.CatchType is not set, use System.Object instead.
8 years ago
Daniel Grunwald
ec610a4422
Clean up mono yield-return decompilation.
8 years ago
Daniel Grunwald
9be7dedbd4
As with every new file: use tabs.
Why can't VS respect .editorconfig when creating new files?
8 years ago
Daniel Grunwald
d550390f4d
Initial support for yield-return decompilation in assemblies compiled with the mono compiler.
8 years ago
Siegfried Pammer
1ac501acc9
Fix missing VariableKind in ILVariable.WriteDefinitionTo
8 years ago
Siegfried Pammer
c27231955a
Split Async tests
8 years ago
Siegfried Pammer
54be524aa6
Remove unnecessary explicit casts in array initializers.
8 years ago
Siegfried Pammer
6df524bb42
Unpack implicit boxing conversions (casts to object).
8 years ago
Siegfried Pammer
ed6a2db37c
Add VariableKind.InitializerTarget to separate stack slots should be renamed from purely generated helper variables in initializer blocks.
8 years ago
Siegfried Pammer
e34f3d4748
Fix performance bottle-neck in AssignVariableNames (see #631 )
8 years ago
Daniel Grunwald
df27dc9686
Fix NullReferenceException in SplitVariables.AddressUsedOnlyForReading
8 years ago
Daniel Grunwald
83f52e4df1
#631 : fix infinite transform loop
8 years ago
Daniel Grunwald
71defde402
Improve cancellation.
8 years ago
Siegfried Pammer
2e09b506b2
Fix #347 - Add a Reset button to the "Open List"
8 years ago
Siegfried Pammer
63b2d697d1
CopyFullyQualifiedTypeNameContextMenuEntry should work on members as well.
8 years ago
Siegfried Pammer
a91bd2fb15
Clean up MiscSettings and DisplaySettings
8 years ago
Siegfried Pammer
de98536f73
Move Process.Start-calls to a central helper method. This ensures we do not crash if there's an OS configuration error, missing browser, whatever.
8 years ago
Siegfried Pammer
55a99ed5b0
Remove duplicate MetadataToken on PropertyTreeNode + more clean-up
8 years ago
Siegfried Pammer
4ce1fbcb00
Fix #822 - Sort Items in the TreeView using Natural Sort Instead
8 years ago
Siegfried Pammer
cb930968d9
Merge pull request #818 from Radon222/multiple-instance-option
Allow Multiple Instance Option and Dialog
8 years ago
Siegfried Pammer
53a9ed47f7
Fix second part of #547
8 years ago
Siegfried Pammer
a09afe18d7
A bit of clean-up
8 years ago
Siegfried Pammer
43ce88ae87
Fix display of ctors of generic types in tree view and fix search for ctors.
8 years ago
Siegfried Pammer
b035f2cbf6
Fix lingering additional documentation after field/ctor removal.
8 years ago
Siegfried Pammer
c918d66e9d
Reimplement folding for C#.
8 years ago
Daniel Grunwald
715fdcefe5
Replace spaces with tabs.
8 years ago
Daniel Grunwald
eb4ab74b8e
Add test case for constant 2147483648. Closes #609 .
8 years ago
Christoph Wille
51dbf728ff
Fix link to latest CI download
8 years ago
Daniel Grunwald
2eb6658efa
Add test case for cast after ternary operator. Closes #765 .
8 years ago
Daniel Grunwald
0cd8e21ff7
Merge branch 'newdecompiler'
This finally brings our new decompiler engine to the ILSpy master branch.
Advantages of the new engine:
* better support for Roslyn-compiled binaries
* much more accurate decompilation, fixing tons of long-standing bugs, for example:
* Invalid goto jumping into block
* Decompiled code calls incorrect overload due to missing cast
* Integer arithmetic uses wrong sign or size due to missing casts
The major changes in the new decompiler are:
* ILAst instructions now carry an IL stack type (enum StackType), so the bit width of operations is known.
* ILAst instructions no longer use C# types; those are introduced only when converting ILAst->C#.
* ILAst instruction set is reduced and now has clear semantics for each operation.
* ILAst uses (extended) basic blocks for control flow.
* Many transforms now are run per-block, which solves a number of problems related to transform pass ordering.
* In debug builds, transform steps can be tracked via the Stepper API to visualize the decompilation process.
* Instead of Cecil.TypeReference, the decompiler now uses the NRefactory TypeSystem.
* The required portions of ICSharpCode.NRefactory are included into ICSharpCode.Decompiler.
8 years ago
Daniel Grunwald
ed55b503d4
Don't use parallel build; the .NET core tooling is too broken.
8 years ago
Daniel Grunwald
a8fd3cd924
Add Newtonsoft.Json to README.md
8 years ago
Siegfried Pammer
2f6994487c
Fix small oversight in update-assemblyinfo.ps1
8 years ago
Siegfried Pammer
627e4bff68
Use CallerMemberNameAttribute in DecompilerSettings.
8 years ago
Siegfried Pammer
d33c334f5a
Fix #284 - Ability to disable decompilation of anonymous types to "var"
8 years ago
Siegfried Pammer
8fed5b11f7
Add DecompilerSettings reference to StatementBuilder and ExpressionBuilder
8 years ago
Siegfried Pammer
17dccc7b02
Fix out-file encoding
8 years ago
Siegfried Pammer
f046f09364
Fix appveyor-install.ps1
8 years ago
Siegfried Pammer
15072606ab
Move UpdateAssemblyInfo to update-assemblyinfo.ps1
8 years ago
Daniel Grunwald
0df2c91d79
Update ILSpy-tests submodule for updated ICSharpCode.Decompiler.dll.
8 years ago
Daniel Grunwald
c2ac9c374c
Use tabs instead of spaces.
8 years ago