905 Commits (432377448e3e6a7e096328fe47f8af9c3baa60c7)

Author SHA1 Message Date
Siegfried Pammer ef4dd6431e Add documentation to InlineReturnTransform and SwitchOnStringTransform 9 years ago
LordJZ db7ac3584e Fix crash when decompiling event add call in collection initializer 9 years ago
Daniel Grunwald a4d4c1253e Fix two minor bugs in NullableLiftingTransform, and enable the LiftedOperators tests that are not affected by redundant casts. 9 years ago
Daniel Grunwald 8533eda92b Use unary negation '-a' instead of '0 - a'. 9 years ago
Siegfried Pammer 930d142a62 Fix bug in SwitchOnStringTransform introduced by 9719926b6bc1e43c9d43d811e5c27d9e797209b8: Ignore exit instruction if condition is not inverted. Otherwise we need a special case for br and leave. 9 years ago
Siegfried Pammer 1ebc7581d8 Fix IsUsedAsThisPointerInCall: if we deal with an unspecified generic type, we assume it's a value type as ldloca should be allowed as this pointer in those cases. 9 years ago
Daniel Grunwald 66dc52c33c Fix handling of 'leave' instruction in SwitchAnalysis. 9 years ago
Siegfried Pammer 9719926b6b Fix some more bugs in SwitchOnStringTransform 9 years ago
Daniel Grunwald 39bb6856b7 Fix various bugs with compound assignments. 9 years ago
Daniel Grunwald 61900e33c3 [nullables] Lifted compound assignments 9 years ago
Siegfried Pammer b78ef2209b Add InlineReturnTransform 9 years ago
Siegfried Pammer a62e13a035 Improve detection of foreach-using in UsingTransform: 9 years ago
Daniel Grunwald 33e5011367 [nullables] support equality comparisons on System.Decimal 9 years ago
Daniel Grunwald bb3ad5c811 [nullables] Lift user-defined equality operator calls if only one argument is nullable. 9 years ago
Daniel Grunwald 87a979b549 [nullables] Lift user-defined equality operator calls. 9 years ago
Siegfried Pammer 4394250d71 Fix Switch(string)-detection in various cases 9 years ago
Siegfried Pammer 2857a8dcf9 ad #885 and #886: add more tests 9 years ago
Daniel Grunwald 846c8613b0 [async] Delete dead ldloc(cachedStateVar). 9 years ago
mohe2015 ccdeded6ba Fix failed decompilation of catch-when if the method is async. 9 years ago
Siegfried Pammer e0df621e44 Implement translation of cascading if-statements with string comparisons to switch(string). 9 years ago
Siegfried Pammer 41aa4573d9 Fix #498: switches implemented by the compiler as Dictionary lookup are not correctly decompiled 9 years ago
Siegfried Pammer b5e46c3545 Fix #882: Invalid assignment code after decompiling 9 years ago
Siegfried Pammer ddd5f43b41 [switch] Add basic SwitchOnStringTransform for Roslyn switch on strings. 9 years ago
Siegfried Pammer d40ecb5e0c [switch] Add StringToInt instruction 9 years ago
Daniel Grunwald ba009e790d Fix #880: NullReferenceException in NullableLiftingTransform. 9 years ago
Daniel Grunwald cf5f3738a9 Fix performance issue due to aggressive debug checks that was causing AppVeyor to time-out. 9 years ago
Daniel Grunwald a6c6ddcea1 Fix #861: Improved loop exit point heuristic. 9 years ago
Daniel Grunwald 1d029b36cb Fix build. 9 years ago
Siegfried Pammer c118a24cbf Use Humanizer in GenerateForeachVariableName 9 years ago
Daniel Grunwald a6559d941b Allow inlining into object/collection initializers. 9 years ago
Daniel Grunwald 7017c6f6e6 Replace LoopingBlockTransform with StatementTransform. 9 years ago
Siegfried Pammer 63cb56b996 Improve AssignVariableNames.IsPlural 9 years ago
Siegfried Pammer 692a1e8e35 Fix #878: InvalidCastException in StatementBuilder.TransformToForeach 9 years ago
Siegfried Pammer c09c4ee404 Fix annotations on identifiers and use correct check for fallback case. 9 years ago
Siegfried Pammer 9bdfdd09ff Add special case for non-generic foreach and add more tests. 9 years ago
Siegfried Pammer 7bbbf39e3a Fix #867: Async delegate tries to access variables with "this." although they are local. 9 years ago
Siegfried Pammer 48f344ed03 Add another pattern for generics/nullable using. 9 years ago
Siegfried Pammer 2b1976c6b5 Fix naming conflict in AssignVariableNames 9 years ago
Siegfried Pammer 2c40b45717 Add support for using on nullables. 9 years ago
Siegfried Pammer 98e4e3418d [using] check variable type and variable usage more strictly. 9 years ago
Daniel Grunwald 6988260ea3 Add ILInlining.IsUsedAsThisPointerInCall(). 9 years ago
Siegfried Pammer e2dab8699f Fix generic using patterns. 9 years ago
Siegfried Pammer 6172dd5bff Extend MatchLdLocRef to work with type parameters as well. 9 years ago
Siegfried Pammer d15d1b86a6 Add transform for new T(). 9 years ago
Siegfried Pammer d1a514b451 Redesign of UsingInstruction. 9 years ago
Siegfried Pammer 5b2c67bf3e Choose better variable names for type parameters. 9 years ago
Siegfried Pammer 48b77d4742 ExpressionTransform: comp(box T(..) [!=]= ldnull) -> comp(.. [!=]= ldnull) where T.Kind == TypeParameter 9 years ago
Daniel Grunwald d0f1b60a04 Fix type names in ILAst debug output. 9 years ago
Daniel Grunwald b5e8571382 [nullables] Support lifting calls to user-defined operators. 9 years ago
Daniel Grunwald f380c29852 Refactor IsGeneratedValueTypeTemporary. 9 years ago