diff --git a/src/Compilers/CSharp/Portable/Binder/Binder_Query.cs b/src/Compilers/CSharp/Portable/Binder/Binder_Query.cs index e963bf9565c26047f28a4eb82a481151bb92d8bc..51bbd365132514b0ee95985ec2f6baba8d3e7300 100644 --- a/src/Compilers/CSharp/Portable/Binder/Binder_Query.cs +++ b/src/Compilers/CSharp/Portable/Binder/Binder_Query.cs @@ -618,9 +618,9 @@ private BoundBlock CreateLambdaBlockForQueryClause(ExpressionSyntax expression, return new BoundQueryClause( syntax: syntax, value: expression, definedSymbol: definedSymbol, - queryInvocation: queryInvocation, + operation: queryInvocation, binder: this, - castInvocation: castInvocation, unoptimizedForm: unoptimizedForm, + cast: castInvocation, unoptimizedForm: unoptimizedForm, type: TypeOrError(expression)); } diff --git a/src/Compilers/CSharp/Portable/BoundTree/BoundExpression.cs b/src/Compilers/CSharp/Portable/BoundTree/BoundExpression.cs index deee90e701366879ffd9da1bee56da56301a305c..7719d4d8933ae691c73bbb0c243db9e73f2f9113 100644 --- a/src/Compilers/CSharp/Portable/BoundTree/BoundExpression.cs +++ b/src/Compilers/CSharp/Portable/BoundTree/BoundExpression.cs @@ -218,33 +218,8 @@ public override Symbol ExpressionSymbol get { return this.Indexer; } } - public BoundIndexerAccess Update(bool useSetterForDefaultArgumentGeneration) - { - if (useSetterForDefaultArgumentGeneration != this.UseSetterForDefaultArgumentGeneration) - { - var result = new BoundIndexerAccess( - this.Syntax, - this.ReceiverOpt, - this.Indexer, - this.Arguments, - this.ArgumentNamesOpt, - this.ArgumentRefKindsOpt, - this.Expanded, - this.ArgsToParamsOpt, - this.BinderOpt, - useSetterForDefaultArgumentGeneration, - this.OriginalIndexersOpt, - this.Type, - this.HasErrors) - { - WasCompilerGenerated = this.WasCompilerGenerated, - }; - - return result; - } - - return this; - } + public BoundIndexerAccess Update(bool useSetterForDefaultArgumentGeneration) => + Update(ReceiverOpt, Indexer, Arguments, ArgumentNamesOpt, ArgumentRefKindsOpt, Expanded, ArgsToParamsOpt, BinderOpt, useSetterForDefaultArgumentGeneration, OriginalIndexersOpt, Type); public override LookupResultKind ResultKind { diff --git a/src/Compilers/CSharp/Portable/BoundTree/BoundNodes.xml b/src/Compilers/CSharp/Portable/BoundTree/BoundNodes.xml index 482a2f44982a49d9ef6c24be8fa7612f10ba3d93..26a658f240d8adf3abd1cc609243554b6c8c8ad5 100644 --- a/src/Compilers/CSharp/Portable/BoundTree/BoundNodes.xml +++ b/src/Compilers/CSharp/Portable/BoundTree/BoundNodes.xml @@ -269,6 +269,9 @@ + @@ -284,6 +287,9 @@ + @@ -364,6 +370,9 @@ + @@ -382,6 +391,9 @@ + @@ -420,6 +432,9 @@ + @@ -645,6 +660,9 @@ Conversion is represented by a single BoundConversion. --> + @@ -1452,6 +1470,9 @@ + @@ -1773,6 +1794,9 @@ + @@ -1821,8 +1845,15 @@ + + + + + +