- 12 9月, 2017 1 次提交
-
-
由 Manish Vasani 提交于
1. Fix test issues 2. Remove IHasDynamicArgumentsExpression interface and move the Arguments property from it to individual IDynamicXXXExpression nodes. 3. Adjust the extension methods for GetArgumentName and GetArgumentRefKind accordingly.
-
- 07 9月, 2017 2 次提交
-
-
由 Fredric Silberberg 提交于
-
由 Julien Couvreur 提交于
-
- 02 9月, 2017 2 次提交
-
-
由 Tomáš Matoušek 提交于
-
由 Manish Vasani 提交于
1) Use IDynamicInvocationExpression for VB late bound invocation and C# dynamic invocation. 2) Use IDynamicIndexerAccessExpression for C# dynamic indexer access; not used in VB. 3) Remove IDynamicObjectCreationExpression.MemberName property. 4) Add extension methods on IHasDynamicArgumentExpression to get optional argument name and ref kind for an argument at a given index.
-
- 01 9月, 2017 1 次提交
-
-
由 Jared Parsons 提交于
-
- 31 8月, 2017 3 次提交
-
-
由 lorcanmooney 提交于
-
由 Fredric Silberberg 提交于
-
由 Julien Couvreur 提交于
-
- 30 8月, 2017 3 次提交
-
-
由 Fredric Silberberg 提交于
-
由 Manish Vasani 提交于
Fixes #8882
-
由 Fredric Silberberg 提交于
-
- 26 8月, 2017 8 次提交
-
-
由 vsadov 提交于
Fixes:#18871
-
由 Fredric Silberberg 提交于
-
由 Ivan Basov 提交于
-
由 Fredric Silberberg 提交于
Added deconstruction support, tests for IFieldReferenceExpression in out var and deconstruction script scenarios.
-
由 Heejae Chang 提交于
-
由 Julien Couvreur 提交于
-
由 Heejae Chang 提交于
-
由 Manish Vasani 提交于
-
- 25 8月, 2017 3 次提交
-
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
由 Andy Gocke 提交于
In order for EnC and other mechanisms to work we have to add synthesized members to a list in the CommonPEModuleBuilder for a compilation (these synthesized members are then queried as part of compilation stages). If those members are struct fields, we don't add them to the struct definition, only to the list of synthesized members. This works for emit, since we explicitly emit everything in the synthesized list, but it doesn't work for any compiler pass that examines the members of the struct for semantically meaningful reasons. This is the case for the CaptureWalker for async and iterator expressions. The walker checks the members of structs when a field of a struct is assigned to see if the struct has been assigned piecewise (each of its members has been assigned individually). If so, it will mark the entire struct as assigned. By not including synthesized fields as proper members of the struct type, the assignment pass believes that many fields have been assigned that have not, and thus marks the full struct as assigned, leading to losing track of variables captured across await/yield statements. This PR fixes the problem by adding the fields to the SynthesizedContainer, but exlcuding them from emit, since we should continue to use the emit mechanism used for CommonPEModuleBuilder. Fixes #21409
-
- 24 8月, 2017 1 次提交
-
-
由 Manish Vasani 提交于
Fixes #20114 and #20122
-
- 23 8月, 2017 1 次提交
-
-
由 CyrusNajmabadi 提交于
-
- 22 8月, 2017 4 次提交
-
-
由 Manish Vasani 提交于
-
由 Manish Vasani 提交于
A customer trace on recent 15.3 release shows that `Microsoft.CodeAnalysis.CSharp!Binder.IsAccessibleHelper` is taking up large amount of CPU stacks for LookupSymbols(name) calls from IDE analyzers. This change optimizes the performance of this code path by adding a name check before doing accessibilty checks.
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
- 19 8月, 2017 5 次提交
-
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
由 Andy Gocke 提交于
-
由 Manish Vasani 提交于
-
由 Manish Vasani 提交于
1. Add IsChecked flag for IIncrementExpression and ICompoundAssignmentExpression 2. Add back VB specific binary operator kinds 3. Add more unit tests and fix baselines of existing tests
-
- 18 8月, 2017 1 次提交
-
-
由 Fredric Silberberg 提交于
-
- 17 8月, 2017 5 次提交
-
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
由 Fredric Silberberg 提交于
-
由 Andy Gocke 提交于
Perform synthesis of closure methods in an early pass before visitation, meaning we no longer need to do a second visitation of the tree to lower local functions. The baselines have been changed because we now do closure id and synthessis in order of closure visitation, rather than bound node visitation. Closure visitation visits all the closures in a given scope, then recurs into nested scopes, while BoundNode visitation treats closures as scopes themselves, so nested closures are visited before closures declared in the same scope. Fixes https://github.com/dotnet/roslyn/projects/26#card-3753331
-