Siegfried Pammer
718fae11de
Activate Loops unit test. (Some test cases are still ignored.)
8 years ago
Siegfried Pammer
0691aee363
Remove foreach from PatternStatementTransform.
8 years ago
Siegfried Pammer
77a257079b
Move some foreach tests to Patterns.cs
8 years ago
Siegfried Pammer
c8a8df8c87
Fix problems in foreach:
- special case for base.GetEnumerator()
- handle implicit casts (unbox.any and classcast)
- handle value types (these use call instead of callvirt)
8 years ago
Siegfried Pammer
44687a01e2
Fix bug in UsingTransform: Do not transform to using, if disposable instance is used after the finally block.
8 years ago
Siegfried Pammer
4f7a479320
Add ILAstWritingOptions parameter to LockInstruction/UsingInstruction.WriteTo, fix merge errors.
8 years ago
Siegfried Pammer
307f782a09
Fix bug in DetectLoop: do not accidentally add IncrementBlock to AdditionalBlocks.
8 years ago
Siegfried Pammer
3c9a0d8a41
Ad #866 : No longer use Debug.Assert, but add warnings to AST.
8 years ago
Siegfried Pammer
3aba0fe57a
Extract foreach transform to method and improve readability.
8 years ago
Siegfried Pammer
fa25b5d2e8
Implement foreach loop detection in StatementBuilder.
8 years ago
Siegfried Pammer
86d3101b22
Add UnwrapNestedContainerIfPossible to reduce block container nesting in foreach pattern.
8 years ago
Siegfried Pammer
ae2e38ece4
Add NoUsing test case.
8 years ago
Siegfried Pammer
1e01f834e8
Fix links on operators.
8 years ago
Siegfried Pammer
6b8ef1c684
Fix highlighting of query contextual keywords.
8 years ago
Siegfried Pammer
d067f0cb6c
Add support for pattern with as-cast to IDisposable.
8 years ago
Siegfried Pammer
31469c8ef1
Implement UsingTransform in ILAst.
8 years ago
Siegfried Pammer
4b12a7e983
Improve formatting of constrained CallInstructions.
8 years ago
Siegfried Pammer
38c0981233
Fix naming of stack slots generated by ILReader.Push.
8 years ago
Siegfried Pammer
d45e3bfb3c
Fix assertion fail in DeclareVariables: Make sure that we do not try to declare variables in non-assignment contexts.
8 years ago
Siegfried Pammer
6da8058587
Add Patterns correctness tests; add missing file headers
8 years ago
Siegfried Pammer
dea81a685d
Add UsingInstruction to ILAst.
8 years ago
Siegfried Pammer
fb092fdf5e
Remove /doc/Dissertation as it's no longer relevant.
8 years ago
Daniel Grunwald
0008deb021
Fix handling of try-finally blocks in ReachingDefinitionsVisitor.
This was causing variables to get split incorrectly.
8 years ago
Daniel Grunwald
c81f9f366e
Remove LdAddressUsagesTransform.
The transform was incorrect (moving and cloning instructions without verifying that they don't have side-effects), and had a negative effect on our ability to detect compound assignments.
8 years ago
Daniel Grunwald
b7320b25e4
[nullables] Lift three-valued logic operators ('&' and '|' on bool?)
8 years ago
Daniel Grunwald
53a050552b
Add support for syntax sugar when writing out the ILAst.
8 years ago
Daniel Grunwald
735f8e070d
Compound assignment doesn't support lifting yet.
8 years ago
Daniel Grunwald
66d1b744c3
Add ILAstWritingOptions parameter to ILInstruction.WriteTo().
8 years ago
Daniel Grunwald
96c6b03d9b
[nullables] operator! on bool?
8 years ago
Daniel Grunwald
02af1b0ab5
[nullables] Lifting support for: bool? == true, bool? != true, bool? == false, bool? != false
8 years ago
Daniel Grunwald
63d6f4bbca
[nullables] Add lifting for operator~.
8 years ago
Daniel Grunwald
b318327db3
[nullables] Fix lifted != operator.
8 years ago
Daniel Grunwald
919219524b
Eliminate the dedicated logic.not instruction, and treat it as syntax sugar similar to logic.and/logic.or.
'logic.not(arg)' is now represented using 'comp(arg == ldc.i4 0)'.
8 years ago
Daniel Grunwald
8701640ca7
[nullables] Add support for equality comparisons.
8 years ago
Siegfried Pammer
bb381327ac
Implement API to reload loaded nuget assemblies.
8 years ago
Siegfried Pammer
9233c99f15
[ILSpy.AddIn] Open multiple output artifacts, if present.
8 years ago
Siegfried Pammer
01ce164339
Set owner on NugetPackageBrowserDialog.
8 years ago
Siegfried Pammer
6f21792746
Fix display of filenames from nupkg.
8 years ago
Siegfried Pammer
3bfc1fc3c2
[ILSpy.AddIn] Fix #815 : "Open output in ILSpy" not working for MSBuild 15 projects in VS2017
8 years ago
Siegfried Pammer
915f1fdf1c
[ILSpy.AddIn] Fix #820 ; Show "Open in ILSpy" in all context menus related to references.
8 years ago
Siegfried Pammer
43975c2a77
[ILSpy.AddIn] Add support for new assembly, project and package references.
8 years ago
Siegfried Pammer
3fcdfaab8a
Add basic NugetPackageBrowserDialog
8 years ago
Siegfried Pammer
070307bb73
Move ExpressionBuilder.HandleCallInstruction to CallBuilder.Build.
8 years ago
Daniel Grunwald
21ef967d4d
[nullables] Lifting for non-equality comparisons.
8 years ago
Siegfried Pammer
32511222cb
Add overload resolution for ctor calls.
8 years ago
Siegfried Pammer
9a78b85576
Fix bug in TransformArrayInitializers: local storage was deleted.
8 years ago
Siegfried Pammer
516e1dacb0
Set CSharpInvocationResolveResult.IsExpandedForm to true, if a params array expansion was performed.
8 years ago
Daniel Grunwald
7e38d9c5aa
Fix #858 : parse local type arguments in reflection names.
8 years ago
Siegfried Pammer
459ac83a65
Merge pull request #863 from siegfriedpammer/params_support
[WIP] Implement support for unwrapping params arrays.
8 years ago
Siegfried Pammer
3098461b0e
Add support for ctors to IsUnambiguousCall
8 years ago