Daniel Grunwald
c28f6455d8
Anonymous type create expressions: when all names can be inferred from the initializers, don't create NamedExpressions.
14 years ago
Daniel Grunwald
6d22ff99ad
Sort custom attributes - the C# compiler seems to add these in random order, so by sorting them we eliminate unnecessary differences when comparing multiple versions of an assembly.
14 years ago
Daniel Grunwald
56c75e09b2
Refactored handling of debug mapping in the decompiler: we now avoid using a side-channel for the debug info and instead return it via the ITextOutput.
14 years ago
Daniel Grunwald
9db07b54c5
Adjust decompiler to NRefactory changes.
14 years ago
Daniel Grunwald
81bb822fdb
Adjust ILSpy to NRefactory changes.
14 years ago
Daniel Grunwald
fc58b40400
Fixed decompilation of WinRT classes (methods implementing interfaces were misdetected as explicit interface implementations)
14 years ago
Daniel Grunwald
eba7aa2ca2
Normalize line endings to LF.
14 years ago
Daniel Grunwald
0cdaf3bec4
Ensure the value parameter of a property setter is called 'value'.
14 years ago
Pent Ploompuu
7c3fd3afda
Use annotations to mark lifted operators that can't be transformed by PushNegation
14 years ago
jbevain
96c7204789
Annotate VariableInitializers with ILVariable when possible
14 years ago
Daniel Grunwald
5463a70fe4
Decompile [ComImport] attribute.
14 years ago
Daniel Grunwald
baa4af92c1
Don't use field initializer syntax when the RHS of the assignment contains "this".
14 years ago
jbevain
d55a61772a
Annotate properties and events with the original method reference too
14 years ago
Daniel Grunwald
f39f7c3d63
Use 'ref', not 'out', for passing arguments to a method parameter declared as "[In, Out] ref".
14 years ago
Pent Ploompuu
66fde6d0ee
Compound assignment support for overloaded operators
14 years ago
Pent Ploompuu
ee0f43ad38
Compound assignment support for lifted operators
14 years ago
Pent Ploompuu
0e993afe58
Add an annotation to redundant ParenthesizedExpressions for PushNegation transform
14 years ago
Eusebiu Marcu
b394749f47
create a new TextOutputLocation class for storing the location in the output text instead of Tuple<int, int>
14 years ago
Siegfried Pammer
3e009aaa1b
add folding
14 years ago
Siegfried Pammer
f4d29b2f2b
add AlwaysGenerateExceptionVariableForCatchBlocks setting to avoid Catch clauses without a variable; disable C#'s query expression translation
14 years ago
Siegfried Pammer
beff26761e
fix #167 - Incorrect decompilation of null as extension method this parameter
14 years ago
Siegfried Pammer
4c4374cc8c
add IntroduceIncrementAndDecrement setting for VB
14 years ago
Pent Ploompuu
26d903efd5
Test case for operator "is" on reference types with result used as a boolean.
14 years ago
Pent Ploompuu
3d7d36f360
Fixed "is" operator regression caused by SimplifyLogicNot
14 years ago
Daniel Grunwald
3fad5cb76b
Fix #249 : Object Initializer not detected for value types
14 years ago
Daniel Grunwald
5c2f3633a0
Don't use variable name from .pdb file if it isn't a valid C# identifier.
14 years ago
Pent Ploompuu
587c36bea2
Type analysis support for the remaining lifted operators
14 years ago
Pent Ploompuu
458571f750
Fix op_ExclusiveOr AST transform
14 years ago
Siegfried Pammer
2a45819408
implement ArrayCreateExpression and CastExpression
14 years ago
Daniel Grunwald
b9109469af
Fixed bug that could cause variable names to be used twice, resulting in a crash in DeclareVariable step. Closes #222 .
14 years ago
Alex Lyman
9faee0ad8d
- Modified the InitializerPeepholeTransforms' Array Initializers to do a forward scan of the block instead of just checking the next instruction. The next-instruction thing breaks down under the case where you have an array-of-arrays (int[][])
...
- Added to the InitializerPeepholeTransforms' Array Initializers to detect the creation of a multi-dimensional array (int[,])
- Modified the ILCode.InitArray contract to take an ArrayType instead of just the element type, and passing with the ArrayType.Dimensions set accordingly.
- AstMethodBodyBuilder now used the ArrayType.Dimensions info to build a tree of ArrayInitializerExpressions from the raw, element-by-element list.
- Fixed OutputVisitor not calling StartNode for EmptyExpressions
Known issues:
- ArrayCreateExpression outputs extra space in the array specifier when using EmptyExpressions, ala: "new int[][, ]"
- The tree of ArrayInitializerExpressions outputs with blank lines before and after each block.
14 years ago
Daniel Grunwald
fde6361995
Fixed missing XML documentation on enum members.
14 years ago
Artur Zgodziński
c42bf520b8
Highlighting references to clicked variable or parameter.
14 years ago
Daniel Grunwald
4f5fb6c140
Fixed references to enum values nested within generic types.
14 years ago
Daniel Grunwald
9376ece056
Fixed references to enum values nested within generic types.
14 years ago
Daniel Grunwald
c339b9270a
Fix crash in disassembler and decompiler when HasPInvokeInfo=true but PInvokeInfo=null (occurs with unmanaged methods in C++/CLI assemblies)
14 years ago
Daniel Grunwald
e8b6e3d808
Annotate anonymous methods/lambdas with the MethodDefinition representing the lambda body.
14 years ago
Pent Ploompuu
f525e42a57
Fix variable naming bug that was introduced together with cle/cge virtual opcodes
14 years ago
Pent Ploompuu
a3465b239f
Remove redundant parentheses during PushNegation transform
14 years ago
Daniel Grunwald
e0c7bebfe8
Add license headers to the files that were missing them.
14 years ago
Pent Ploompuu
af155c788e
Type analysis support for operators on nullable values
14 years ago
Pent Ploompuu
cb174caab3
Negation of operators on nullable values is not allowed for correct decompilation
14 years ago
Siegfried Pammer
111a6ca292
do not use primitive type names in TreeNodes; fixes #183
14 years ago
Pent Ploompuu
fec24cf171
Improved decompilation correctness for operators on nullable values
14 years ago
Siegfried Pammer
f86fa5d1dd
implement support for op_True and extend unit test
14 years ago
Daniel Grunwald
229218174f
Inlining: remove the arg_-Variable in catch blocks.
14 years ago
Daniel Grunwald
7d24f683d1
Decompile AssemblyVersion attribute. Closes #188 .
14 years ago
Daniel Grunwald
3779381796
Add support for type forwarding declarations ([TypeForwardedToAttribute]). Closes #190 .
14 years ago
Daniel Grunwald
32081feb1b
Decompile security declarations. Closes #189 .
14 years ago
Daniel Grunwald
2d42dd5c57
Fixed several issues related to [MarshalAs] attributes.
14 years ago