Binder\Binder_Operators.cs (43)
43if (left.Kind == BoundKind.EventAccess)
111if (left.Kind == BoundKind.EventAccess && !CheckEventValueKind((BoundEventAccess)left, BindValueKind.Assignable, diagnostics))
312Debug.Assert(left.Kind != BoundKind.EventAccess || hasError);
907if (result.Kind == BoundKind.TypeExpression
912else if (result.Kind == BoundKind.BadExpression)
1335case (BoundKind.DefaultLiteral, _) when !isEquality:
1336case (_, BoundKind.DefaultLiteral) when !isEquality:
1340case (BoundKind.DefaultLiteral, BoundKind.DefaultLiteral):
1343case (BoundKind.DefaultLiteral, _) when right.Type is TypeParameterSymbol:
1347case (_, BoundKind.DefaultLiteral) when left.Type is TypeParameterSymbol:
1351case (BoundKind.UnconvertedObjectCreationExpression, _):
1354case (_, BoundKind.UnconvertedObjectCreationExpression):
2917if (left.Kind == BoundKind.Conversion && right.Kind == BoundKind.Conversion)
4062case BoundKind.NamespaceExpression:
4063case BoundKind.TypeExpression:
4191BoundKind exprKind = expr.Kind;
4194case BoundKind.FieldAccess:
4195case BoundKind.EventAccess:
4199if (exprKind == BoundKind.FieldAccess)
4241case BoundKind.InlineArrayAccess:
4253case BoundKind.RangeVariable:
4261case BoundKind.Parameter:
4284case BoundKind.ThisReference:
4285case BoundKind.BaseReference:
4290case BoundKind.Local:
4300case BoundKind.PointerIndirectionOperator: //Covers ->, since the receiver will be one of these.
4301case BoundKind.ConvertedStackAllocExpression:
4305case BoundKind.PointerElementAccess:
4320case BoundKind.PropertyAccess: // Never fixed
4321case BoundKind.IndexerAccess: // Never fixed
4763case BoundKind.UnboundLambda:
4764case BoundKind.Lambda:
4765case BoundKind.MethodGroup: // New in Roslyn - see DevDiv #864740.
4945operand.Kind == BoundKind.MethodGroup ||
5363case BoundKind.UnboundLambda:
5364case BoundKind.Lambda:
5365case BoundKind.MethodGroup: // New in Roslyn - see DevDiv #864740.
5374case BoundKind.TupleLiteral:
5375case BoundKind.ConvertedTupleLiteral:
5674if (leftOperand.Kind == BoundKind.UnboundLambda || leftOperand.Kind == BoundKind.MethodGroup)
Generated\BoundNodes.xml.Generated.cs (609)
264protected BoundInitializer(BoundKind kind, SyntaxNode syntax, bool hasErrors)
269protected BoundInitializer(BoundKind kind, SyntaxNode syntax)
278protected BoundEqualsValue(BoundKind kind, SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundExpression value, bool hasErrors = false)
296: base(BoundKind.FieldEqualsValue, syntax, locals, value, hasErrors || value.HasErrors())
326: base(BoundKind.PropertyEqualsValue, syntax, locals, value, hasErrors || value.HasErrors())
356: base(BoundKind.ParameterEqualsValue, syntax, locals, value, hasErrors || value.HasErrors())
386: base(BoundKind.GlobalStatementInitializer, syntax, hasErrors || statement.HasErrors())
413protected BoundExpression(BoundKind kind, SyntaxNode syntax, TypeSymbol? type, bool hasErrors)
419protected BoundExpression(BoundKind kind, SyntaxNode syntax, TypeSymbol? type)
430protected BoundValuePlaceholderBase(BoundKind kind, SyntaxNode syntax, TypeSymbol? type, bool hasErrors)
435protected BoundValuePlaceholderBase(BoundKind kind, SyntaxNode syntax, TypeSymbol? type)
444protected BoundEarlyValuePlaceholderBase(BoundKind kind, SyntaxNode syntax, TypeSymbol? type, bool hasErrors)
449protected BoundEarlyValuePlaceholderBase(BoundKind kind, SyntaxNode syntax, TypeSymbol? type)
459: base(BoundKind.ValuePlaceholder, syntax, type, hasErrors)
464: base(BoundKind.ValuePlaceholder, syntax, type)
487: base(BoundKind.CapturedReceiverPlaceholder, syntax, type, hasErrors || receiver.HasErrors())
515: base(BoundKind.DeconstructValuePlaceholder, syntax, type, hasErrors)
525: base(BoundKind.DeconstructValuePlaceholder, syntax, type)
556: base(BoundKind.TupleOperandPlaceholder, syntax, type, hasErrors)
564: base(BoundKind.TupleOperandPlaceholder, syntax, type)
591: base(BoundKind.AwaitableValuePlaceholder, syntax, type, hasErrors)
596: base(BoundKind.AwaitableValuePlaceholder, syntax, type)
620: base(BoundKind.DisposableValuePlaceholder, syntax, type, hasErrors)
628: base(BoundKind.DisposableValuePlaceholder, syntax, type)
655: base(BoundKind.ObjectOrCollectionValuePlaceholder, syntax, type, hasErrors)
664: base(BoundKind.ObjectOrCollectionValuePlaceholder, syntax, type)
693: base(BoundKind.ImplicitIndexerValuePlaceholder, syntax, type, hasErrors)
701: base(BoundKind.ImplicitIndexerValuePlaceholder, syntax, type)
728: base(BoundKind.ImplicitIndexerReceiverPlaceholder, syntax, type, hasErrors || receiver.HasErrors())
760: base(BoundKind.ListPatternReceiverPlaceholder, syntax, type, hasErrors)
768: base(BoundKind.ListPatternReceiverPlaceholder, syntax, type)
795: base(BoundKind.ListPatternIndexPlaceholder, syntax, type, hasErrors)
803: base(BoundKind.ListPatternIndexPlaceholder, syntax, type)
830: base(BoundKind.SlicePatternReceiverPlaceholder, syntax, type, hasErrors)
838: base(BoundKind.SlicePatternReceiverPlaceholder, syntax, type)
865: base(BoundKind.SlicePatternRangePlaceholder, syntax, type, hasErrors)
873: base(BoundKind.SlicePatternRangePlaceholder, syntax, type)
900: base(BoundKind.CollectionBuilderElementsPlaceholder, syntax, type, hasErrors)
905: base(BoundKind.CollectionBuilderElementsPlaceholder, syntax, type)
928: base(BoundKind.Dup, syntax, type, hasErrors)
934: base(BoundKind.Dup, syntax, type)
959: base(BoundKind.PassByCopy, syntax, type, hasErrors || expression.HasErrors())
987: base(BoundKind.BadExpression, syntax, type, hasErrors || childBoundNodes.HasErrors())
1024: base(BoundKind.BadStatement, syntax, hasErrors || childBoundNodes.HasErrors())
1052: base(BoundKind.ExtractedFinallyBlock, syntax, hasErrors || finallyBlock.HasErrors())
1080: base(BoundKind.TypeExpression, syntax, type, hasErrors || boundContainingTypeOpt.HasErrors() || boundDimensionsOpt.HasErrors())
1115: base(BoundKind.TypeOrValueExpression, syntax, type, hasErrors)
1131: base(BoundKind.TypeOrValueExpression, syntax, type)
1164: base(BoundKind.NamespaceExpression, syntax, null, hasErrors)
1174: base(BoundKind.NamespaceExpression, syntax, null)
1205: base(BoundKind.UnaryOperator, syntax, type, hasErrors || operand.HasErrors())
1247: base(BoundKind.IncrementOperator, syntax, type, hasErrors || operand.HasErrors() || operandPlaceholder.HasErrors() || operandConversion.HasErrors() || resultPlaceholder.HasErrors() || resultConversion.HasErrors())
1295: base(BoundKind.AddressOfOperator, syntax, type, hasErrors || operand.HasErrors())
1327: base(BoundKind.UnconvertedAddressOfOperator, syntax, null, hasErrors || operand.HasErrors())
1356: base(BoundKind.FunctionPointerLoad, syntax, type, hasErrors)
1367: base(BoundKind.FunctionPointerLoad, syntax, type)
1399: base(BoundKind.PointerIndirectionOperator, syntax, type, hasErrors || operand.HasErrors())
1431: base(BoundKind.PointerElementAccess, syntax, type, hasErrors || expression.HasErrors() || index.HasErrors())
1468: base(BoundKind.FunctionPointerInvocation, syntax, type, hasErrors || invokedExpression.HasErrors() || arguments.HasErrors())
1505: base(BoundKind.RefTypeOperator, syntax, type, hasErrors || operand.HasErrors())
1537: base(BoundKind.MakeRefOperator, syntax, type, hasErrors || operand.HasErrors())
1567: base(BoundKind.RefValueOperator, syntax, type, hasErrors || operand.HasErrors())
1599: base(BoundKind.FromEndIndexExpression, syntax, type, hasErrors || operand.HasErrors())
1631: base(BoundKind.RangeExpression, syntax, type, hasErrors || leftOperandOpt.HasErrors() || rightOperandOpt.HasErrors())
1663protected BoundBinaryOperatorBase(BoundKind kind, SyntaxNode syntax, BoundExpression left, BoundExpression right, TypeSymbol type, bool hasErrors = false)
1683: base(BoundKind.BinaryOperator, syntax, left, right, type, hasErrors || left.HasErrors() || right.HasErrors())
1721: base(BoundKind.TupleBinaryOperator, syntax, type, hasErrors || left.HasErrors() || right.HasErrors())
1759: base(BoundKind.UserDefinedConditionalLogicalOperator, syntax, left, right, type, hasErrors || trueFalseOperandPlaceholder.HasErrors() || trueFalseOperandConversion.HasErrors() || left.HasErrors() || right.HasErrors())
1812: base(BoundKind.CompoundAssignmentOperator, syntax, type, hasErrors || left.HasErrors() || right.HasErrors() || leftPlaceholder.HasErrors() || leftConversion.HasErrors() || finalPlaceholder.HasErrors() || finalConversion.HasErrors())
1859: base(BoundKind.AssignmentOperator, syntax, type, hasErrors || left.HasErrors() || right.HasErrors())
1893: base(BoundKind.DeconstructionAssignmentOperator, syntax, type, hasErrors || left.HasErrors() || right.HasErrors())
1928: base(BoundKind.NullCoalescingOperator, syntax, type, hasErrors || leftOperand.HasErrors() || rightOperand.HasErrors() || leftPlaceholder.HasErrors() || leftConversion.HasErrors())
1969: base(BoundKind.NullCoalescingAssignmentOperator, syntax, type, hasErrors || leftOperand.HasErrors() || rightOperand.HasErrors())
2000: base(BoundKind.UnconvertedConditionalOperator, syntax, null, hasErrors || condition.HasErrors() || consequence.HasErrors() || alternative.HasErrors())
2039: base(BoundKind.ConditionalOperator, syntax, type, hasErrors || condition.HasErrors() || consequence.HasErrors() || alternative.HasErrors())
2083: base(BoundKind.ArrayAccess, syntax, type, hasErrors || expression.HasErrors() || indices.HasErrors())
2116: base(BoundKind.RefArrayAccess, syntax, null, hasErrors || arrayAccess.HasErrors())
2145: base(BoundKind.ArrayLength, syntax, type, hasErrors || expression.HasErrors())
2175: base(BoundKind.AwaitableInfo, syntax, hasErrors || awaitableInstancePlaceholder.HasErrors() || getAwaiter.HasErrors() || runtimeAsyncAwaitCall.HasErrors() || runtimeAsyncAwaitCallPlaceholder.HasErrors())
2216: base(BoundKind.AwaitExpression, syntax, type, hasErrors || expression.HasErrors() || awaitableInfo.HasErrors())
2250protected BoundTypeOf(BoundKind kind, SyntaxNode syntax, MethodSymbol? getTypeFromHandle, TypeSymbol type, bool hasErrors)
2259protected BoundTypeOf(BoundKind kind, SyntaxNode syntax, MethodSymbol? getTypeFromHandle, TypeSymbol type)
2275: base(BoundKind.TypeOfOperator, syntax, getTypeFromHandle, type, hasErrors || sourceType.HasErrors())
2304: base(BoundKind.BlockInstrumentation, syntax, hasErrors || prologue.HasErrors() || epilogue.HasErrors())
2336: base(BoundKind.MethodDefIndex, syntax, type, hasErrors)
2350: base(BoundKind.MethodDefIndex, syntax, type)
2380: base(BoundKind.LocalId, syntax, type, hasErrors)
2391: base(BoundKind.LocalId, syntax, type)
2423: base(BoundKind.ParameterId, syntax, type, hasErrors)
2434: base(BoundKind.ParameterId, syntax, type)
2466: base(BoundKind.StateMachineInstanceId, syntax, type, hasErrors)
2474: base(BoundKind.StateMachineInstanceId, syntax, type)
2501: base(BoundKind.MaximumMethodDefIndex, syntax, type, hasErrors)
2509: base(BoundKind.MaximumMethodDefIndex, syntax, type)
2536: base(BoundKind.InstrumentationPayloadRoot, syntax, type, hasErrors)
2545: base(BoundKind.InstrumentationPayloadRoot, syntax, type)
2574: base(BoundKind.ThrowIfModuleCancellationRequested, syntax, type, hasErrors)
2582: base(BoundKind.ThrowIfModuleCancellationRequested, syntax, type)
2609: base(BoundKind.ModuleCancellationTokenExpression, syntax, type, hasErrors)
2617: base(BoundKind.ModuleCancellationTokenExpression, syntax, type)
2644: base(BoundKind.ModuleVersionId, syntax, type, hasErrors)
2652: base(BoundKind.ModuleVersionId, syntax, type)
2679: base(BoundKind.ModuleVersionIdString, syntax, type, hasErrors)
2687: base(BoundKind.ModuleVersionIdString, syntax, type)
2714: base(BoundKind.SourceDocumentIndex, syntax, type, hasErrors)
2724: base(BoundKind.SourceDocumentIndex, syntax, type)
2754: base(BoundKind.MethodInfo, syntax, type, hasErrors)
2765: base(BoundKind.MethodInfo, syntax, type)
2797: base(BoundKind.FieldInfo, syntax, type, hasErrors)
2808: base(BoundKind.FieldInfo, syntax, type)
2840: base(BoundKind.DefaultLiteral, syntax, null, hasErrors)
2845: base(BoundKind.DefaultLiteral, syntax, null)
2863: base(BoundKind.DefaultExpression, syntax, type, hasErrors || targetType.HasErrors())
2894: base(BoundKind.IsOperator, syntax, type, hasErrors || operand.HasErrors() || targetType.HasErrors())
2929: base(BoundKind.AsOperator, syntax, type, hasErrors || operand.HasErrors() || targetType.HasErrors() || operandPlaceholder.HasErrors() || operandConversion.HasErrors())
2966: base(BoundKind.SizeOfOperator, syntax, type, hasErrors || sourceType.HasErrors())
2998: base(BoundKind.Conversion, syntax, type, hasErrors || operand.HasErrors())
3046: base(BoundKind.ReadOnlySpanFromArray, syntax, type, hasErrors || operand.HasErrors())
3079: base(BoundKind.ArgList, syntax, type, hasErrors)
3087: base(BoundKind.ArgList, syntax, type)
3114: base(BoundKind.ArgListOperator, syntax, type, hasErrors || arguments.HasErrors())
3145: base(BoundKind.FixedLocalCollectionInitializer, syntax, type, hasErrors || elementPointerPlaceholder.HasErrors() || elementPointerConversion.HasErrors() || expression.HasErrors())
3183protected BoundStatement(BoundKind kind, SyntaxNode syntax, bool hasErrors)
3188protected BoundStatement(BoundKind kind, SyntaxNode syntax)
3198: base(BoundKind.SequencePoint, syntax, hasErrors || statementOpt.HasErrors())
3223: base(BoundKind.SequencePointWithSpan, syntax, hasErrors || statementOpt.HasErrors())
3250: base(BoundKind.SavePreviousSequencePoint, syntax, hasErrors)
3259: base(BoundKind.SavePreviousSequencePoint, syntax)
3287: base(BoundKind.RestorePreviousSequencePoint, syntax, hasErrors)
3296: base(BoundKind.RestorePreviousSequencePoint, syntax)
3324: base(BoundKind.StepThroughSequencePoint, syntax, hasErrors)
3330: base(BoundKind.StepThroughSequencePoint, syntax)
3355: base(BoundKind.Block, syntax, statements, hasErrors || instrumentation.HasErrors() || statements.HasErrors())
3391: base(BoundKind.Scope, syntax, statements, hasErrors || statements.HasErrors())
3420: base(BoundKind.StateMachineScope, syntax, hasErrors || statement.HasErrors())
3451: base(BoundKind.LocalDeclaration, syntax, hasErrors || declaredTypeOpt.HasErrors() || initializerOpt.HasErrors() || argumentsOpt.HasErrors())
3486protected BoundMultipleLocalDeclarationsBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundLocalDeclaration> localDeclarations, bool hasErrors = false)
3501: base(BoundKind.MultipleLocalDeclarations, syntax, localDeclarations, hasErrors || localDeclarations.HasErrors())
3527: base(BoundKind.UsingLocalDeclarations, syntax, localDeclarations, hasErrors || awaitOpt.HasErrors() || localDeclarations.HasErrors())
3557: base(BoundKind.LocalFunctionStatement, syntax, hasErrors || blockBody.HasErrors() || expressionBody.HasErrors())
3589: base(BoundKind.NoOpStatement, syntax, hasErrors)
3595: base(BoundKind.NoOpStatement, syntax)
3620: base(BoundKind.ReturnStatement, syntax, hasErrors || expressionOpt.HasErrors())
3653: base(BoundKind.YieldReturnStatement, syntax, hasErrors || expression.HasErrors())
3681: base(BoundKind.YieldBreakStatement, syntax, hasErrors)
3686: base(BoundKind.YieldBreakStatement, syntax)
3698: base(BoundKind.ThrowStatement, syntax, hasErrors || expressionOpt.HasErrors())
3723: base(BoundKind.ExpressionStatement, syntax, hasErrors || expression.HasErrors())
3751: base(BoundKind.BreakStatement, syntax, hasErrors || labelExpressionOpt.HasErrors())
3781: base(BoundKind.ContinueStatement, syntax, hasErrors || labelExpressionOpt.HasErrors())
3811: base(BoundKind.SwitchStatement, syntax, hasErrors || expression.HasErrors() || switchSections.HasErrors() || reachabilityDecisionDag.HasErrors() || defaultLabel.HasErrors())
3856: base(BoundKind.SwitchDispatch, syntax, hasErrors || expression.HasErrors())
3892: base(BoundKind.IfStatement, syntax, hasErrors || condition.HasErrors() || consequence.HasErrors() || alternativeOpt.HasErrors())
3924protected BoundLoopStatement(BoundKind kind, SyntaxNode syntax, LabelSymbol breakLabel, LabelSymbol continueLabel, bool hasErrors)
3935protected BoundLoopStatement(BoundKind kind, SyntaxNode syntax, LabelSymbol breakLabel, LabelSymbol continueLabel)
3952protected BoundConditionalLoopStatement(BoundKind kind, SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundExpression condition, BoundStatement body, LabelSymbol breakLabel, LabelSymbol continueLabel, bool hasErrors = false)
3975: base(BoundKind.DoStatement, syntax, locals, condition, body, breakLabel, continueLabel, hasErrors || condition.HasErrors() || body.HasErrors())
4005: base(BoundKind.WhileStatement, syntax, locals, condition, body, breakLabel, continueLabel, hasErrors || condition.HasErrors() || body.HasErrors())
4035: base(BoundKind.ForStatement, syntax, breakLabel, continueLabel, hasErrors || initializer.HasErrors() || condition.HasErrors() || increment.HasErrors() || body.HasErrors())
4077: base(BoundKind.ForEachStatement, syntax, breakLabel, continueLabel, hasErrors || elementPlaceholder.HasErrors() || elementConversion.HasErrors() || iterationVariableType.HasErrors() || iterationErrorExpressionOpt.HasErrors() || expression.HasErrors() || deconstructionOpt.HasErrors() || body.HasErrors())
4126: base(BoundKind.ForEachDeconstructStep, syntax, hasErrors || deconstructionAssignment.HasErrors() || targetPlaceholder.HasErrors())
4157: base(BoundKind.UsingStatement, syntax, hasErrors || declarationsOpt.HasErrors() || expressionOpt.HasErrors() || body.HasErrors() || awaitOpt.HasErrors())
4196: base(BoundKind.FixedStatement, syntax, hasErrors || declarations.HasErrors() || body.HasErrors())
4230: base(BoundKind.LockStatement, syntax, hasErrors || argument.HasErrors() || body.HasErrors())
4261: base(BoundKind.TryStatement, syntax, hasErrors || tryBlock.HasErrors() || catchBlocks.HasErrors() || finallyBlockOpt.HasErrors())
4298: base(BoundKind.CatchBlock, syntax, hasErrors || exceptionSourceOpt.HasErrors() || exceptionFilterPrologueOpt.HasErrors() || exceptionFilterOpt.HasErrors() || body.HasErrors())
4339: base(BoundKind.Literal, syntax, type, hasErrors)
4345: base(BoundKind.Literal, syntax, type)
4370: base(BoundKind.Utf8String, syntax, type, hasErrors)
4380: base(BoundKind.Utf8String, syntax, type)
4410: base(BoundKind.ThisReference, syntax, type, hasErrors)
4418: base(BoundKind.ThisReference, syntax, type)
4445: base(BoundKind.PreviousSubmissionReference, syntax, type, hasErrors)
4453: base(BoundKind.PreviousSubmissionReference, syntax, type)
4480: base(BoundKind.HostObjectMemberReference, syntax, type, hasErrors)
4488: base(BoundKind.HostObjectMemberReference, syntax, type)
4515: base(BoundKind.BaseReference, syntax, type, hasErrors)
4520: base(BoundKind.BaseReference, syntax, type)
4544: base(BoundKind.Local, syntax, type, hasErrors)
4557: base(BoundKind.Local, syntax, type)
4593: base(BoundKind.PseudoVariable, syntax, type, hasErrors)
4605: base(BoundKind.PseudoVariable, syntax, type)
4638: base(BoundKind.RangeVariable, syntax, type, hasErrors || value.HasErrors())
4671: base(BoundKind.Parameter, syntax, type, hasErrors)
4681: base(BoundKind.Parameter, syntax, type)
4711: base(BoundKind.LabelStatement, syntax, hasErrors)
4720: base(BoundKind.LabelStatement, syntax)
4748: base(BoundKind.GotoStatement, syntax, hasErrors || caseExpressionOpt.HasErrors() || labelExpressionOpt.HasErrors())
4780: base(BoundKind.LabeledStatement, syntax, hasErrors || body.HasErrors())
4811: base(BoundKind.Label, syntax, type, hasErrors)
4820: base(BoundKind.Label, syntax, type)
4847protected BoundStatementList(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundStatement> statements, bool hasErrors = false)
4857: base(BoundKind.StatementList, syntax, hasErrors || statements.HasErrors())
4885: base(BoundKind.ConditionalGoto, syntax, hasErrors || condition.HasErrors())
4917protected BoundSwitchExpression(BoundKind kind, SyntaxNode syntax, BoundExpression expression, ImmutableArray<BoundSwitchExpressionArm> switchArms, BoundDecisionDag reachabilityDecisionDag, LabelSymbol? defaultLabel, bool reportedNotExhaustive, TypeSymbol? type, bool hasErrors = false)
4942: base(BoundKind.SwitchExpressionArm, syntax, hasErrors || pattern.HasErrors() || whenClause.HasErrors() || value.HasErrors())
4983: base(BoundKind.UnconvertedSwitchExpression, syntax, expression, switchArms, reachabilityDecisionDag, defaultLabel, reportedNotExhaustive, type, hasErrors || expression.HasErrors() || switchArms.HasErrors() || reachabilityDecisionDag.HasErrors())
5011: base(BoundKind.ConvertedSwitchExpression, syntax, expression, switchArms, reachabilityDecisionDag, defaultLabel, reportedNotExhaustive, type, hasErrors || expression.HasErrors() || switchArms.HasErrors() || reachabilityDecisionDag.HasErrors())
5045: base(BoundKind.DecisionDag, syntax, hasErrors || rootNode.HasErrors())
5074protected BoundDecisionDagNode(BoundKind kind, SyntaxNode syntax, bool hasErrors)
5079protected BoundDecisionDagNode(BoundKind kind, SyntaxNode syntax)
5089: base(BoundKind.EvaluationDecisionDagNode, syntax, hasErrors || evaluation.HasErrors() || next.HasErrors())
5120: base(BoundKind.TestDecisionDagNode, syntax, hasErrors || test.HasErrors() || whenTrue.HasErrors() || whenFalse.HasErrors())
5154: base(BoundKind.WhenDecisionDagNode, syntax, hasErrors || whenExpression.HasErrors() || whenTrue.HasErrors() || whenFalse.HasErrors())
5189: base(BoundKind.LeafDecisionDagNode, syntax, hasErrors)
5198: base(BoundKind.LeafDecisionDagNode, syntax)
5225protected BoundDagTest(BoundKind kind, SyntaxNode syntax, BoundDagTemp input, bool hasErrors = false)
5240: base(BoundKind.DagTemp, syntax, hasErrors || source.HasErrors())
5272: base(BoundKind.DagTypeTest, syntax, input, hasErrors || input.HasErrors())
5301: base(BoundKind.DagNonNullTest, syntax, input, hasErrors || input.HasErrors())
5329: base(BoundKind.DagExplicitNullTest, syntax, input, hasErrors || input.HasErrors())
5355: base(BoundKind.DagValueTest, syntax, input, hasErrors || input.HasErrors())
5384: base(BoundKind.DagRelationalTest, syntax, input, hasErrors || input.HasErrors())
5414protected BoundDagEvaluation(BoundKind kind, SyntaxNode syntax, BoundDagTemp input, bool hasErrors = false)
5427: base(BoundKind.DagDeconstructEvaluation, syntax, input, hasErrors || input.HasErrors())
5456: base(BoundKind.DagTypeEvaluation, syntax, input, hasErrors || input.HasErrors())
5485: base(BoundKind.DagFieldEvaluation, syntax, input, hasErrors || input.HasErrors())
5514: base(BoundKind.DagPropertyEvaluation, syntax, input, hasErrors || input.HasErrors())
5545: base(BoundKind.DagIndexEvaluation, syntax, input, hasErrors || input.HasErrors())
5576: base(BoundKind.DagIndexerEvaluation, syntax, input, hasErrors || lengthTemp.HasErrors() || indexerAccess.HasErrors() || receiverPlaceholder.HasErrors() || argumentPlaceholder.HasErrors() || input.HasErrors())
5623: base(BoundKind.DagSliceEvaluation, syntax, input, hasErrors || lengthTemp.HasErrors() || indexerAccess.HasErrors() || receiverPlaceholder.HasErrors() || argumentPlaceholder.HasErrors() || input.HasErrors())
5672: base(BoundKind.DagAssignmentEvaluation, syntax, input, hasErrors || target.HasErrors() || input.HasErrors())
5701: base(BoundKind.DagPassThroughEvaluation, syntax, input, hasErrors || input.HasErrors())
5727: base(BoundKind.SwitchSection, syntax, statements, hasErrors || switchLabels.HasErrors() || statements.HasErrors())
5759: base(BoundKind.SwitchLabel, syntax, hasErrors || pattern.HasErrors() || whenClause.HasErrors())
5793protected BoundMethodOrPropertyGroup(BoundKind kind, SyntaxNode syntax, BoundExpression? receiverOpt, LookupResultKind resultKind, bool hasErrors = false)
5808: base(BoundKind.SequencePointExpression, syntax, type, hasErrors || expression.HasErrors())
5836: base(BoundKind.Sequence, syntax, type, hasErrors || sideEffects.HasErrors() || value.HasErrors())
5872: base(BoundKind.SpillSequence, syntax, type, hasErrors || sideEffects.HasErrors() || value.HasErrors())
5908: base(BoundKind.DynamicMemberAccess, syntax, type, hasErrors || receiver.HasErrors())
5946protected BoundDynamicInvocableBase(BoundKind kind, SyntaxNode syntax, BoundExpression expression, ImmutableArray<BoundExpression> arguments, TypeSymbol? type, bool hasErrors = false)
5964: base(BoundKind.DynamicInvocation, syntax, expression, arguments, type, hasErrors || expression.HasErrors() || arguments.HasErrors())
6000: base(BoundKind.ConditionalAccess, syntax, type, hasErrors || receiver.HasErrors() || accessExpression.HasErrors())
6033: base(BoundKind.LoweredConditionalAccess, syntax, type, hasErrors || receiver.HasErrors() || whenNotNull.HasErrors() || whenNullOpt.HasErrors())
6074: base(BoundKind.ConditionalReceiver, syntax, type, hasErrors)
6083: base(BoundKind.ConditionalReceiver, syntax, type)
6112: base(BoundKind.ComplexConditionalReceiver, syntax, type, hasErrors || valueTypeReceiver.HasErrors() || referenceTypeReceiver.HasErrors())
6145: base(BoundKind.MethodGroup, syntax, receiverOpt, resultKind, hasErrors || receiverOpt.HasErrors())
6186: base(BoundKind.PropertyGroup, syntax, receiverOpt, resultKind, hasErrors || receiverOpt.HasErrors())
6214: base(BoundKind.Call, syntax, type, hasErrors || receiverOpt.HasErrors() || arguments.HasErrors())
6273: base(BoundKind.EventAssignmentOperator, syntax, type, hasErrors || receiverOpt.HasErrors() || argument.HasErrors())
6312: base(BoundKind.Attribute, syntax, type, hasErrors || constructorArguments.HasErrors() || namedArguments.HasErrors())
6357: base(BoundKind.UnconvertedObjectCreationExpression, syntax, null, hasErrors || arguments.HasErrors())
6394protected BoundObjectCreationExpressionBase(BoundKind kind, SyntaxNode syntax, TypeSymbol type, bool hasErrors)
6402protected BoundObjectCreationExpressionBase(BoundKind kind, SyntaxNode syntax, TypeSymbol type)
6416: base(BoundKind.ObjectCreationExpression, syntax, type, hasErrors || arguments.HasErrors() || initializerExpressionOpt.HasErrors())
6466protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6485: base(BoundKind.UnconvertedCollectionExpression, syntax, elements, null, hasErrors || withElement.HasErrors() || elements.HasErrors())
6514: base(BoundKind.UnconvertedWithElement, syntax, hasErrors || arguments.HasErrors())
6546: base(BoundKind.CollectionExpression, syntax, elements, type, hasErrors || placeholder.HasErrors() || collectionCreation.HasErrors() || collectionBuilderElementsPlaceholder.HasErrors() || unconvertedCollectionExpression.HasErrors() || elements.HasErrors())
6595: base(BoundKind.CollectionExpressionSpreadExpressionPlaceholder, syntax, type, hasErrors)
6600: base(BoundKind.CollectionExpressionSpreadExpressionPlaceholder, syntax, type)
6623: base(BoundKind.CollectionExpressionSpreadElement, syntax, hasErrors || expression.HasErrors() || expressionPlaceholder.HasErrors() || conversion.HasErrors() || lengthOrCount.HasErrors() || elementPlaceholder.HasErrors() || iteratorBody.HasErrors())
6662protected BoundTupleExpression(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<bool> inferredNamesOpt, TypeSymbol? type, bool hasErrors = false)
6681: base(BoundKind.TupleLiteral, syntax, arguments, argumentNamesOpt, inferredNamesOpt, type, hasErrors || arguments.HasErrors())
6708: base(BoundKind.ConvertedTupleLiteral, syntax, arguments, argumentNamesOpt, inferredNamesOpt, type, hasErrors || sourceTuple.HasErrors() || arguments.HasErrors())
6738: base(BoundKind.DynamicObjectCreationExpression, syntax, type, hasErrors || arguments.HasErrors() || initializerExpressionOpt.HasErrors())
6781: base(BoundKind.NoPiaObjectCreationExpression, syntax, type, hasErrors || initializerExpressionOpt.HasErrors())
6812protected BoundObjectInitializerExpressionBase(BoundKind kind, SyntaxNode syntax, BoundObjectOrCollectionValuePlaceholder placeholder, ImmutableArray<BoundExpression> initializers, TypeSymbol type, bool hasErrors = false)
6832: base(BoundKind.ObjectInitializerExpression, syntax, placeholder, initializers, type, hasErrors || placeholder.HasErrors() || initializers.HasErrors())
6860: base(BoundKind.ObjectInitializerMember, syntax, type, hasErrors || arguments.HasErrors())
6909: base(BoundKind.DynamicObjectInitializerMember, syntax, type, hasErrors)
6921: base(BoundKind.DynamicObjectInitializerMember, syntax, type)
6954: base(BoundKind.CollectionInitializerExpression, syntax, placeholder, initializers, type, hasErrors || placeholder.HasErrors() || initializers.HasErrors())
6982: base(BoundKind.CollectionElementInitializer, syntax, type, hasErrors || arguments.HasErrors() || implicitReceiverOpt.HasErrors())
7027: base(BoundKind.DynamicCollectionElementInitializer, syntax, expression, arguments, type, hasErrors || expression.HasErrors() || arguments.HasErrors())
7059: base(BoundKind.ImplicitReceiver, syntax, type, hasErrors)
7067: base(BoundKind.ImplicitReceiver, syntax, type)
7094: base(BoundKind.AnonymousObjectCreationExpression, syntax, type, hasErrors || arguments.HasErrors() || declarations.HasErrors())
7130: base(BoundKind.AnonymousPropertyDeclaration, syntax, type, hasErrors)
7140: base(BoundKind.AnonymousPropertyDeclaration, syntax, type)
7170: base(BoundKind.NewT, syntax, type, hasErrors || initializerExpressionOpt.HasErrors())
7200: base(BoundKind.DelegateCreationExpression, syntax, type, hasErrors || argument.HasErrors())
7236: base(BoundKind.ArrayCreation, syntax, type, hasErrors || bounds.HasErrors() || initializerOpt.HasErrors())
7268: base(BoundKind.ArrayInitialization, syntax, null, hasErrors || initializers.HasErrors())
7298protected BoundStackAllocArrayCreationBase(BoundKind kind, SyntaxNode syntax, TypeSymbol elementType, BoundExpression count, BoundArrayInitialization? initializerOpt, TypeSymbol? type, bool hasErrors = false)
7318: base(BoundKind.StackAllocArrayCreation, syntax, elementType, count, initializerOpt, type, hasErrors || count.HasErrors() || initializerOpt.HasErrors())
7345: base(BoundKind.ConvertedStackAllocExpression, syntax, elementType, count, initializerOpt, type, hasErrors || count.HasErrors() || initializerOpt.HasErrors())
7374: base(BoundKind.FieldAccess, syntax, type, hasErrors || receiverOpt.HasErrors())
7414: base(BoundKind.HoistedFieldAccess, syntax, type, hasErrors)
7424: base(BoundKind.HoistedFieldAccess, syntax, type)
7454: base(BoundKind.PropertyAccess, syntax, type, hasErrors || receiverOpt.HasErrors())
7492: base(BoundKind.EventAccess, syntax, type, hasErrors || receiverOpt.HasErrors())
7528: base(BoundKind.IndexerAccess, syntax, type, hasErrors || receiverOpt.HasErrors() || arguments.HasErrors())
7579: base(BoundKind.ImplicitIndexerAccess, syntax, type, hasErrors || receiver.HasErrors() || argument.HasErrors() || lengthOrCountAccess.HasErrors() || receiverPlaceholder.HasErrors() || indexerOrSliceAccess.HasErrors() || argumentPlaceholders.HasErrors())
7628: base(BoundKind.InlineArrayAccess, syntax, type, hasErrors || expression.HasErrors() || argument.HasErrors())
7669: base(BoundKind.DynamicIndexerAccess, syntax, type, hasErrors || receiver.HasErrors() || arguments.HasErrors())
7709: base(BoundKind.Lambda, syntax, type, hasErrors || unboundLambda.HasErrors() || body.HasErrors())
7749: base(BoundKind.UnboundLambda, syntax, null, hasErrors)
7760: base(BoundKind.UnboundLambda, syntax, null)
7793: base(BoundKind.QueryClause, syntax, type, hasErrors || value.HasErrors() || operation.HasErrors() || cast.HasErrors() || unoptimizedForm.HasErrors())
7834: base(BoundKind.TypeOrInstanceInitializers, syntax, statements, hasErrors || statements.HasErrors())
7860: base(BoundKind.NameOfOperator, syntax, type, hasErrors || argument.HasErrors())
7896protected BoundInterpolatedStringBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundExpression> parts, ConstantValue? constantValueOpt, TypeSymbol? type, bool hasErrors = false)
7913: base(BoundKind.UnconvertedInterpolatedString, syntax, parts, constantValueOpt, type, hasErrors || parts.HasErrors())
7939: base(BoundKind.InterpolatedString, syntax, parts, constantValueOpt, type, hasErrors || parts.HasErrors())
7967: base(BoundKind.InterpolatedStringHandlerPlaceholder, syntax, type, hasErrors)
7972: base(BoundKind.InterpolatedStringHandlerPlaceholder, syntax, type)
7995: base(BoundKind.InterpolatedStringArgumentPlaceholder, syntax, type, hasErrors)
8004: base(BoundKind.InterpolatedStringArgumentPlaceholder, syntax, type)
8033: base(BoundKind.StringInsert, syntax, null, hasErrors || value.HasErrors() || alignment.HasErrors() || format.HasErrors())
8068: base(BoundKind.IsPatternExpression, syntax, type, hasErrors || expression.HasErrors() || pattern.HasErrors() || reachabilityDecisionDag.HasErrors())
8111protected BoundPattern(BoundKind kind, SyntaxNode syntax, TypeSymbol inputType, TypeSymbol narrowedType, bool hasErrors)
8126protected BoundPattern(BoundKind kind, SyntaxNode syntax, TypeSymbol inputType, TypeSymbol narrowedType)
8144: base(BoundKind.ConstantPattern, syntax, inputType, narrowedType, hasErrors || value.HasErrors())
8183: base(BoundKind.PatternWithUnionMatching, syntax, inputType, narrowedType, hasErrors || leftOfPendingConjunction.HasErrors() || valueProperty.HasErrors() || valuePattern.HasErrors())
8225: base(BoundKind.DiscardPattern, syntax, inputType, narrowedType, hasErrors)
8238: base(BoundKind.DiscardPattern, syntax, inputType, narrowedType)
8264protected BoundObjectPattern(BoundKind kind, SyntaxNode syntax, Symbol? variable, BoundExpression? variableAccess, bool isUnionMatching, TypeSymbol inputType, TypeSymbol narrowedType, bool hasErrors = false)
8284: base(BoundKind.DeclarationPattern, syntax, variable, variableAccess, isUnionMatching, inputType, narrowedType, hasErrors || declaredType.HasErrors() || variableAccess.HasErrors())
8320: base(BoundKind.RecursivePattern, syntax, variable, variableAccess, isUnionMatching, inputType, narrowedType, hasErrors || declaredType.HasErrors() || deconstruction.HasErrors() || properties.HasErrors() || variableAccess.HasErrors())
8361: base(BoundKind.ListPattern, syntax, variable, variableAccess, isUnionMatching, inputType, narrowedType, hasErrors || subpatterns.HasErrors() || lengthAccess.HasErrors() || indexerAccess.HasErrors() || receiverPlaceholder.HasErrors() || argumentPlaceholder.HasErrors() || variableAccess.HasErrors())
8405: base(BoundKind.SlicePattern, syntax, inputType, narrowedType, hasErrors || pattern.HasErrors() || indexerAccess.HasErrors() || receiverPlaceholder.HasErrors() || argumentPlaceholder.HasErrors())
8444: base(BoundKind.ITuplePattern, syntax, inputType, narrowedType, hasErrors || subpatterns.HasErrors())
8485protected BoundSubpattern(BoundKind kind, SyntaxNode syntax, BoundPattern pattern, bool hasErrors = false)
8504: base(BoundKind.PositionalSubpattern, syntax, pattern, hasErrors || pattern.HasErrors())
8532: base(BoundKind.PropertySubpattern, syntax, pattern, hasErrors || member.HasErrors() || pattern.HasErrors())
8562: base(BoundKind.PropertySubpatternMember, syntax, hasErrors || receiver.HasErrors())
8594: base(BoundKind.TypePattern, syntax, inputType, narrowedType, hasErrors || declaredType.HasErrors())
8632: base(BoundKind.BinaryPattern, syntax, inputType, narrowedType, hasErrors || left.HasErrors() || right.HasErrors())
8671: base(BoundKind.NegatedPattern, syntax, inputType, narrowedType, hasErrors || negated.HasErrors())
8705: base(BoundKind.RelationalPattern, syntax, inputType, narrowedType, hasErrors || value.HasErrors())
8746: base(BoundKind.DiscardExpression, syntax, type, hasErrors)
8753: base(BoundKind.DiscardExpression, syntax, type)
8781: base(BoundKind.ThrowExpression, syntax, type, hasErrors || expression.HasErrors())
8808protected VariablePendingInference(BoundKind kind, SyntaxNode syntax, Symbol variableSymbol, BoundExpression? receiverOpt, bool hasErrors = false)
8826: base(BoundKind.OutVariablePendingInference, syntax, variableSymbol, receiverOpt, hasErrors || receiverOpt.HasErrors())
8852: base(BoundKind.DeconstructionVariablePendingInference, syntax, variableSymbol, receiverOpt, hasErrors || receiverOpt.HasErrors())
8878: base(BoundKind.OutDeconstructVarPendingInference, syntax, null, hasErrors)
8885: base(BoundKind.OutDeconstructVarPendingInference, syntax, null)
8912protected BoundMethodBodyBase(BoundKind kind, SyntaxNode syntax, BoundBlock? blockBody, BoundBlock? expressionBody, bool hasErrors = false)
8926: base(BoundKind.NonConstructorMethodBody, syntax, blockBody, expressionBody, hasErrors || blockBody.HasErrors() || expressionBody.HasErrors())
8949: base(BoundKind.ConstructorMethodBody, syntax, blockBody, expressionBody, hasErrors || initializer.HasErrors() || blockBody.HasErrors() || expressionBody.HasErrors())
8979: base(BoundKind.ExpressionWithNullability, syntax, type, hasErrors || expression.HasErrors())
9010: base(BoundKind.ValueForNullableAnalysis, syntax, type, hasErrors || originalExpression.HasErrors())
9035: base(BoundKind.WithExpression, syntax, type, hasErrors || receiver.HasErrors() || initializerExpression.HasErrors())
9075case BoundKind.FieldEqualsValue:
9077case BoundKind.PropertyEqualsValue:
9079case BoundKind.ParameterEqualsValue:
9081case BoundKind.GlobalStatementInitializer:
9083case BoundKind.ValuePlaceholder:
9085case BoundKind.CapturedReceiverPlaceholder:
9087case BoundKind.DeconstructValuePlaceholder:
9089case BoundKind.TupleOperandPlaceholder:
9091case BoundKind.AwaitableValuePlaceholder:
9093case BoundKind.DisposableValuePlaceholder:
9095case BoundKind.ObjectOrCollectionValuePlaceholder:
9097case BoundKind.ImplicitIndexerValuePlaceholder:
9099case BoundKind.ImplicitIndexerReceiverPlaceholder:
9101case BoundKind.ListPatternReceiverPlaceholder:
9103case BoundKind.ListPatternIndexPlaceholder:
9105case BoundKind.SlicePatternReceiverPlaceholder:
9107case BoundKind.SlicePatternRangePlaceholder:
9109case BoundKind.CollectionBuilderElementsPlaceholder:
9111case BoundKind.Dup:
9113case BoundKind.PassByCopy:
9115case BoundKind.BadExpression:
9117case BoundKind.BadStatement:
9119case BoundKind.ExtractedFinallyBlock:
9121case BoundKind.TypeExpression:
9123case BoundKind.TypeOrValueExpression:
9125case BoundKind.NamespaceExpression:
9127case BoundKind.UnaryOperator:
9129case BoundKind.IncrementOperator:
9131case BoundKind.AddressOfOperator:
9133case BoundKind.UnconvertedAddressOfOperator:
9135case BoundKind.FunctionPointerLoad:
9137case BoundKind.PointerIndirectionOperator:
9139case BoundKind.PointerElementAccess:
9141case BoundKind.FunctionPointerInvocation:
9143case BoundKind.RefTypeOperator:
9145case BoundKind.MakeRefOperator:
9147case BoundKind.RefValueOperator:
9149case BoundKind.FromEndIndexExpression:
9151case BoundKind.RangeExpression:
9153case BoundKind.BinaryOperator:
9155case BoundKind.TupleBinaryOperator:
9157case BoundKind.UserDefinedConditionalLogicalOperator:
9159case BoundKind.CompoundAssignmentOperator:
9161case BoundKind.AssignmentOperator:
9163case BoundKind.DeconstructionAssignmentOperator:
9165case BoundKind.NullCoalescingOperator:
9167case BoundKind.NullCoalescingAssignmentOperator:
9169case BoundKind.UnconvertedConditionalOperator:
9171case BoundKind.ConditionalOperator:
9173case BoundKind.ArrayAccess:
9175case BoundKind.RefArrayAccess:
9177case BoundKind.ArrayLength:
9179case BoundKind.AwaitableInfo:
9181case BoundKind.AwaitExpression:
9183case BoundKind.TypeOfOperator:
9185case BoundKind.BlockInstrumentation:
9187case BoundKind.MethodDefIndex:
9189case BoundKind.LocalId:
9191case BoundKind.ParameterId:
9193case BoundKind.StateMachineInstanceId:
9195case BoundKind.MaximumMethodDefIndex:
9197case BoundKind.InstrumentationPayloadRoot:
9199case BoundKind.ThrowIfModuleCancellationRequested:
9201case BoundKind.ModuleCancellationTokenExpression:
9203case BoundKind.ModuleVersionId:
9205case BoundKind.ModuleVersionIdString:
9207case BoundKind.SourceDocumentIndex:
9209case BoundKind.MethodInfo:
9211case BoundKind.FieldInfo:
9213case BoundKind.DefaultLiteral:
9215case BoundKind.DefaultExpression:
9217case BoundKind.IsOperator:
9219case BoundKind.AsOperator:
9221case BoundKind.SizeOfOperator:
9223case BoundKind.Conversion:
9225case BoundKind.ReadOnlySpanFromArray:
9227case BoundKind.ArgList:
9229case BoundKind.ArgListOperator:
9231case BoundKind.FixedLocalCollectionInitializer:
9233case BoundKind.SequencePoint:
9235case BoundKind.SequencePointWithSpan:
9237case BoundKind.SavePreviousSequencePoint:
9239case BoundKind.RestorePreviousSequencePoint:
9241case BoundKind.StepThroughSequencePoint:
9243case BoundKind.Block:
9245case BoundKind.Scope:
9247case BoundKind.StateMachineScope:
9249case BoundKind.LocalDeclaration:
9251case BoundKind.MultipleLocalDeclarations:
9253case BoundKind.UsingLocalDeclarations:
9255case BoundKind.LocalFunctionStatement:
9257case BoundKind.NoOpStatement:
9259case BoundKind.ReturnStatement:
9261case BoundKind.YieldReturnStatement:
9263case BoundKind.YieldBreakStatement:
9265case BoundKind.ThrowStatement:
9267case BoundKind.ExpressionStatement:
9269case BoundKind.BreakStatement:
9271case BoundKind.ContinueStatement:
9273case BoundKind.SwitchStatement:
9275case BoundKind.SwitchDispatch:
9277case BoundKind.IfStatement:
9279case BoundKind.DoStatement:
9281case BoundKind.WhileStatement:
9283case BoundKind.ForStatement:
9285case BoundKind.ForEachStatement:
9287case BoundKind.ForEachDeconstructStep:
9289case BoundKind.UsingStatement:
9291case BoundKind.FixedStatement:
9293case BoundKind.LockStatement:
9295case BoundKind.TryStatement:
9297case BoundKind.CatchBlock:
9299case BoundKind.Literal:
9301case BoundKind.Utf8String:
9303case BoundKind.ThisReference:
9305case BoundKind.PreviousSubmissionReference:
9307case BoundKind.HostObjectMemberReference:
9309case BoundKind.BaseReference:
9311case BoundKind.Local:
9313case BoundKind.PseudoVariable:
9315case BoundKind.RangeVariable:
9317case BoundKind.Parameter:
9319case BoundKind.LabelStatement:
9321case BoundKind.GotoStatement:
9323case BoundKind.LabeledStatement:
9325case BoundKind.Label:
9327case BoundKind.StatementList:
9329case BoundKind.ConditionalGoto:
9331case BoundKind.SwitchExpressionArm:
9333case BoundKind.UnconvertedSwitchExpression:
9335case BoundKind.ConvertedSwitchExpression:
9337case BoundKind.DecisionDag:
9339case BoundKind.EvaluationDecisionDagNode:
9341case BoundKind.TestDecisionDagNode:
9343case BoundKind.WhenDecisionDagNode:
9345case BoundKind.LeafDecisionDagNode:
9347case BoundKind.DagTemp:
9349case BoundKind.DagTypeTest:
9351case BoundKind.DagNonNullTest:
9353case BoundKind.DagExplicitNullTest:
9355case BoundKind.DagValueTest:
9357case BoundKind.DagRelationalTest:
9359case BoundKind.DagDeconstructEvaluation:
9361case BoundKind.DagTypeEvaluation:
9363case BoundKind.DagFieldEvaluation:
9365case BoundKind.DagPropertyEvaluation:
9367case BoundKind.DagIndexEvaluation:
9369case BoundKind.DagIndexerEvaluation:
9371case BoundKind.DagSliceEvaluation:
9373case BoundKind.DagAssignmentEvaluation:
9375case BoundKind.DagPassThroughEvaluation:
9377case BoundKind.SwitchSection:
9379case BoundKind.SwitchLabel:
9381case BoundKind.SequencePointExpression:
9383case BoundKind.Sequence:
9385case BoundKind.SpillSequence:
9387case BoundKind.DynamicMemberAccess:
9389case BoundKind.DynamicInvocation:
9391case BoundKind.ConditionalAccess:
9393case BoundKind.LoweredConditionalAccess:
9395case BoundKind.ConditionalReceiver:
9397case BoundKind.ComplexConditionalReceiver:
9399case BoundKind.MethodGroup:
9401case BoundKind.PropertyGroup:
9403case BoundKind.Call:
9405case BoundKind.EventAssignmentOperator:
9407case BoundKind.Attribute:
9409case BoundKind.UnconvertedObjectCreationExpression:
9411case BoundKind.ObjectCreationExpression:
9413case BoundKind.UnconvertedCollectionExpression:
9415case BoundKind.UnconvertedWithElement:
9417case BoundKind.CollectionExpression:
9419case BoundKind.CollectionExpressionSpreadExpressionPlaceholder:
9421case BoundKind.CollectionExpressionSpreadElement:
9423case BoundKind.TupleLiteral:
9425case BoundKind.ConvertedTupleLiteral:
9427case BoundKind.DynamicObjectCreationExpression:
9429case BoundKind.NoPiaObjectCreationExpression:
9431case BoundKind.ObjectInitializerExpression:
9433case BoundKind.ObjectInitializerMember:
9435case BoundKind.DynamicObjectInitializerMember:
9437case BoundKind.CollectionInitializerExpression:
9439case BoundKind.CollectionElementInitializer:
9441case BoundKind.DynamicCollectionElementInitializer:
9443case BoundKind.ImplicitReceiver:
9445case BoundKind.AnonymousObjectCreationExpression:
9447case BoundKind.AnonymousPropertyDeclaration:
9449case BoundKind.NewT:
9451case BoundKind.DelegateCreationExpression:
9453case BoundKind.ArrayCreation:
9455case BoundKind.ArrayInitialization:
9457case BoundKind.StackAllocArrayCreation:
9459case BoundKind.ConvertedStackAllocExpression:
9461case BoundKind.FieldAccess:
9463case BoundKind.HoistedFieldAccess:
9465case BoundKind.PropertyAccess:
9467case BoundKind.EventAccess:
9469case BoundKind.IndexerAccess:
9471case BoundKind.ImplicitIndexerAccess:
9473case BoundKind.InlineArrayAccess:
9475case BoundKind.DynamicIndexerAccess:
9477case BoundKind.Lambda:
9479case BoundKind.UnboundLambda:
9481case BoundKind.QueryClause:
9483case BoundKind.TypeOrInstanceInitializers:
9485case BoundKind.NameOfOperator:
9487case BoundKind.UnconvertedInterpolatedString:
9489case BoundKind.InterpolatedString:
9491case BoundKind.InterpolatedStringHandlerPlaceholder:
9493case BoundKind.InterpolatedStringArgumentPlaceholder:
9495case BoundKind.StringInsert:
9497case BoundKind.IsPatternExpression:
9499case BoundKind.ConstantPattern:
9501case BoundKind.PatternWithUnionMatching:
9503case BoundKind.DiscardPattern:
9505case BoundKind.DeclarationPattern:
9507case BoundKind.RecursivePattern:
9509case BoundKind.ListPattern:
9511case BoundKind.SlicePattern:
9513case BoundKind.ITuplePattern:
9515case BoundKind.PositionalSubpattern:
9517case BoundKind.PropertySubpattern:
9519case BoundKind.PropertySubpatternMember:
9521case BoundKind.TypePattern:
9523case BoundKind.BinaryPattern:
9525case BoundKind.NegatedPattern:
9527case BoundKind.RelationalPattern:
9529case BoundKind.DiscardExpression:
9531case BoundKind.ThrowExpression:
9533case BoundKind.OutVariablePendingInference:
9535case BoundKind.DeconstructionVariablePendingInference:
9537case BoundKind.OutDeconstructVarPendingInference:
9539case BoundKind.NonConstructorMethodBody:
9541case BoundKind.ConstructorMethodBody:
9543case BoundKind.ExpressionWithNullability:
9545case BoundKind.ValueForNullableAnalysis:
9547case BoundKind.WithExpression:
17698internal static PipelinePhase DoesNotSurvive(BoundKind kind)
17702BoundKind.ValuePlaceholder => PipelinePhase.LocalRewriting,
17703BoundKind.DeconstructValuePlaceholder => PipelinePhase.LocalRewriting,
17704BoundKind.TupleOperandPlaceholder => PipelinePhase.InitialBinding,
17705BoundKind.AwaitableValuePlaceholder => PipelinePhase.StateMachineRewriting,
17706BoundKind.DisposableValuePlaceholder => PipelinePhase.InitialBinding,
17707BoundKind.ImplicitIndexerReceiverPlaceholder => PipelinePhase.LocalRewriting,
17708BoundKind.ListPatternReceiverPlaceholder => PipelinePhase.LocalRewriting,
17709BoundKind.ListPatternIndexPlaceholder => PipelinePhase.LocalRewriting,
17710BoundKind.SlicePatternReceiverPlaceholder => PipelinePhase.LocalRewriting,
17711BoundKind.SlicePatternRangePlaceholder => PipelinePhase.LocalRewriting,
17712BoundKind.CollectionBuilderElementsPlaceholder => PipelinePhase.LocalRewriting,
17713BoundKind.TypeOrValueExpression => PipelinePhase.InitialBinding,
17714BoundKind.UnconvertedAddressOfOperator => PipelinePhase.InitialBinding,
17715BoundKind.UnconvertedConditionalOperator => PipelinePhase.InitialBinding,
17716BoundKind.AwaitableInfo => PipelinePhase.StateMachineRewriting,
17717BoundKind.AwaitExpression => PipelinePhase.StateMachineRewriting,
17718BoundKind.DefaultLiteral => PipelinePhase.LocalRewriting,
17719BoundKind.LocalFunctionStatement => PipelinePhase.ClosureConversion,
17720BoundKind.YieldReturnStatement => PipelinePhase.StateMachineRewriting,
17721BoundKind.YieldBreakStatement => PipelinePhase.StateMachineRewriting,
17722BoundKind.IfStatement => PipelinePhase.LocalRewriting,
17723BoundKind.UsingStatement => PipelinePhase.LocalRewriting,
17724BoundKind.UnconvertedSwitchExpression => PipelinePhase.InitialBinding,
17725BoundKind.SpillSequence => PipelinePhase.Spilling,
17726BoundKind.UnconvertedObjectCreationExpression => PipelinePhase.InitialBinding,
17727BoundKind.UnconvertedCollectionExpression => PipelinePhase.InitialBinding,
17728BoundKind.TupleLiteral => PipelinePhase.InitialBinding,
17729BoundKind.TypeOrInstanceInitializers => PipelinePhase.LocalRewriting,
17730BoundKind.UnconvertedInterpolatedString => PipelinePhase.InitialBinding,
17731BoundKind.InterpolatedStringHandlerPlaceholder => PipelinePhase.LocalRewriting,
17732BoundKind.InterpolatedStringArgumentPlaceholder => PipelinePhase.LocalRewriting,
17733BoundKind.PatternWithUnionMatching => PipelinePhase.InitialBinding,
17734BoundKind.DeconstructionVariablePendingInference => PipelinePhase.LocalRewriting,
17735BoundKind.ExpressionWithNullability => PipelinePhase.InitialBinding,
17736BoundKind.ValueForNullableAnalysis => PipelinePhase.InitialBinding,