Analysis\FlowAnalysis\DataFlowPass.vb (15)
1578CheckAssigned(node.LocalSymbol, node.Syntax, rwContext)
1582CheckAssigned(node.LocalSymbol, node.Syntax, ReadWriteContext.None)
1592CheckAssigned(node.RangeVariable, node.Syntax, ReadWriteContext.None)
1607Dim variableIsUsedDirectlyAndIsAlwaysAssigned = DeclaredVariableIsAlwaysAssignedBeforeInitializer(node.Syntax.Parent, node.InitializerOpt, placeholder)
1612SetPlaceholderSubstitute(placeholder, New BoundLocal(node.Syntax, local, local.Type))
1772CheckAssigned(MeParameter, node.Syntax)
1778CheckAssigned(node.ParameterSymbol, node.Syntax)
1787CheckAssigned(node, node.Syntax, ReadWriteContext.None)
1797CheckAssigned(node, node.Syntax, rwContext)
1942CheckAssignedFromArgumentWrite(arg, arg.Syntax)
1996CheckAssignedFunctionValue(functionLocal.LocalSymbol, node.Syntax)
2005CheckAssigned(MeParameter, node.Syntax)
2010CheckAssigned(MeParameter, node.Syntax)
2046DeclaredVariableIsAlwaysAssignedBeforeInitializer(node.Syntax, node.Initializer, placeholder)
2083Me.SetPlaceholderSubstitute(placeholder, New BoundLocal(localDecl.Syntax, localToUseAsSubstitute, localToUseAsSubstitute.Type))
Analysis\InitializerRewriter.vb (4)
68Dim syntax = block.Syntax
171Return New BoundBlock(block.Syntax, block.StatementListSyntax, block.Locals, boundStatements.ToImmutableAndFree(), block.HasErrors)
185Return New BoundBlock(block.Syntax, block.StatementListSyntax, block.Locals, boundStatements.ToImmutableAndFree(), block.HasErrors)
230boundStatements.Add(New BoundReturnStatement(submissionResult.Syntax, submissionResult, method.FunctionLocal, method.ExitLabel))
Binding\Binder_Attributes.vb (11)
568If expression.Syntax.SyntaxTree IsNot Nothing AndAlso
569Me.Compilation.ContainsSyntaxTree(expression.Syntax.SyntaxTree) Then
594Debug.Assert(Not expression.Syntax.SyntaxTree.IsEmbeddedSyntaxTree)
769ReportDiagnostic(diagBag, conv.Operand.Syntax, ERRID.ERR_RequiredAttributeConstConversion2, conv.Operand.Type, conv.Type)
783ReportDiagnostic(diagBag, conv.Operand.Syntax, ERRID.ERR_RequiredAttributeConstConversion2, conv.Operand.Type, conv.Type)
798ReportDiagnostic(diagBag, conv.Operand.Syntax, ERRID.ERR_RequiredAttributeConstConversion2, If(conv.Operand.Type, _binder.Compilation.GetSpecialType(SpecialType.System_Object)), conv.Type)
802If node.Syntax.Kind = SyntaxKind.PredefinedCastExpression Then
803Dim cast = DirectCast(node.Syntax, PredefinedCastExpressionSyntax)
822ReportDiagnostic(diagBag, node.Syntax, ERRID.ERR_RequiredConstExpr)
843ReportDiagnostic(diagBag, sourceType.Syntax, diagInfo)
867ReportDiagnostic(diag, initializerOpt.Syntax, ERRID.ERR_MissingValuesForArraysInApplAttrs)
Binding\Binder_Conversions.vb (55)
95If argument.Syntax IsNot node Then
123ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_RestrictedConversion1, sourceType)
128WarnOnNarrowingConversionBetweenSealedClassAndAnInterface(conv, argument.Syntax, sourceType, targetType, diagnostics)
131ReportNoConversionError(argument.Syntax, sourceType, targetType, diagnostics)
137ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_IdentityDirectCastForFloat)
140ReportDiagnostic(diagnostics, argument.Syntax, ERRID.WRN_ObsoleteIdentityDirectCastForValueType)
162WarnOnLockConversion(sourceType, argument.Syntax, diagnostics)
212If argument.Syntax IsNot node Then
250ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_RestrictedConversion1, sourceType)
255WarnOnNarrowingConversionBetweenSealedClassAndAnInterface(conv, argument.Syntax, sourceType, targetType, diagnostics)
258ReportNoConversionError(argument.Syntax, sourceType, targetType, diagnostics)
265WarnOnLockConversion(sourceType, argument.Syntax, diagnostics)
419Return New BoundNullableIsTrueOperator(argument.Syntax, argument, booleanType).MakeCompilerGenerated()
443Debug.Assert(tree Is argument.Syntax)
451If isExplicit AndAlso argument.Syntax IsNot tree Then
465TypeOf argument.Syntax.Parent Is BinaryExpressionSyntax OrElse
466TypeOf argument.Syntax.Parent Is UnaryExpressionSyntax OrElse
467TypeOf argument.Syntax.Parent Is TupleExpressionSyntax OrElse
468(TypeOf argument.Syntax.Parent Is AssignmentStatementSyntax AndAlso argument.Syntax.Parent.Kind <> SyntaxKind.SimpleAssignmentStatement),
489diagnostics.Add(argument.Syntax, useSiteInfo)
510ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_RestrictedConversion1, sourceType)
515WarnOnNarrowingConversionBetweenSealedClassAndAnInterface(convKind.Key, argument.Syntax, sourceType, targetType, diagnostics)
523ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_StrictArgumentCopyBackNarrowing3,
526ReportDiagnostic(diagnostics, argument.Syntax, ERRID.WRN_ImplicitConversionCopyBack,
542If Not MakeVarianceConversionSuggestion(convKind.Key, argument.Syntax, sourceType, targetType, diagnostics, justWarn:=False) Then
554ReportDiagnostic(diagnostics, argument.Syntax, err, sourceType, targetType)
564If Not MakeVarianceConversionSuggestion(convKind.Key, argument.Syntax, sourceType, targetType, diagnostics, justWarn:=True) Then
572ReportDiagnostic(diagnostics, argument.Syntax, wrnId1, ErrorFactory.ErrorInfo(wrnId2, sourceType, targetType))
589ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_ExpressionOverflow1, errorTargetType)
591ElseIf isExplicit OrElse Not MakeVarianceConversionSuggestion(convKind.Key, argument.Syntax, sourceType, targetType, diagnostics, justWarn:=False) Then
592ReportNoConversionError(argument.Syntax, sourceType, targetType, diagnostics, copybackConversionParamName)
1055ReportDiagnostic(diagnostics, argument.Syntax, ERRID.WRN_ConvertingLock)
1104Dim argumentSyntax = argument.Syntax
1210If ReclassifyExpression(enclosed, conversionSemantics, enclosed.Syntax, convKind, isExplicit, targetType, diagnostics) Then
1233ReportDiagnostic(diagnostics, addressOfExpression.Syntax, ERRID.ERR_AddressOfNotDelegate1, targetType)
1346ReportDiagnostic(diagnostics, unboundLambda.Syntax, ERRID.ERR_LambdaNotDelegate1, targetType)
1352ReportDiagnostic(diagnostics, unboundLambda.Syntax, ERRID.ERR_LambdaNotDelegate1, targetDelegateType)
1354ElseIf ReportDelegateInvokeUseSite(diagnostics, unboundLambda.Syntax, targetDelegateType, delegateInvoke) Then
1381unboundLambda.Syntax,
1433unboundLambda.Syntax,
1457Dim methodGroup = New BoundMethodGroup(unboundLambda.Syntax,
1479relaxationLambdaOpt = relaxationBinder.BuildDelegateRelaxationLambda(unboundLambda.Syntax,
1520ReportDiagnostic(diagnostics, lambda.Syntax, ERRID.ERR_LambdaNotCreatableDelegate1, targetType)
1523ReportDiagnostic(diagnostics, lambda.Syntax, ERRID.ERR_LambdaNotDelegate1, targetType)
1528ReportDiagnostic(diagnostics, lambda.Syntax, ERRID.ERR_LambdaNotDelegate1, targetDelegateType)
1529ElseIf Not ReportDelegateInvokeUseSite(diagnostics, lambda.Syntax, targetDelegateType, invoke) Then
1539ApplyImplicitConversion(lambda.Expression.Syntax,
1549ReportDiagnostic(diagnostics, lambda.Syntax, ERRID.ERR_LambdaBindingMismatch1, targetDelegateType)
1586location = DirectCast(lambda.Expression, BoundRangeVariableAssignment).Value.Syntax
1588location = lambda.Expression.Syntax
1597ApplyImplicitConversion(lambda.Expression.Syntax, delegateReturnType, lambda.Expression,
1672convertedArguments.Add(ApplyConversion(argument.Syntax, destType, argument, isExplicit, diagnostics))
1676sourceTuple.Syntax,
1683result = New BoundConversion(sourceTuple.Syntax, result, convKind, checked:=False, explicitCastInCode:=isExplicit, type:=destination)
Binding\Binder_Delegates.vb (17)
133If boundFirstArgument.Syntax IsNot node Then
225Dim syntaxTree = addressOfExpression.Syntax
271If addressOfExpression.Binder.CheckSharedSymbolAccess(addressOfExpression.Syntax,
289ReportDiagnostic(diagnostics, addressOfExpression.MethodGroup.Syntax,
302Dim addressOfSyntax As SyntaxNode = addressOfExpression.Syntax
303Dim addressOfExpressionSyntax = DirectCast(addressOfExpression.Syntax, UnaryExpressionSyntax)
321addressOfExpression.Binder.ReportDiagnosticsIfObsoleteOrNotSupported(diagnostics, fromMethod, addressOfExpression.MethodGroup.Syntax)
447Dim addressOfSyntax = addressOfExpression.Syntax
572Dim addressOfOperandSyntax = addressOfExpression.Syntax
599addressOfExpression.MethodGroup.Syntax,
629Dim addressOfOperandSyntax = addressOfExpression.Syntax
977Dim syntaxNode = addressOfExpression.Syntax
990receiver = AdjustReceiverTypeOrValue(receiver, receiver.Syntax, targetMethod.IsShared, diagnostics, resolvedTypeOrValueReceiver)
995Dim addressOfOperandSyntax = addressOfExpression.Syntax
1018boundLambda = BuildDelegateRelaxationLambda(syntaxNode, sourceMethodGroup.Syntax, receiver, targetMethod,
1033ReportDiagnostic(diagnostics, addressOfExpression.MethodGroup.Syntax, ERRID.ERR_NoPartialMethodInAddressOf1, target)
1100relaxationReceiverPlaceholder = New BoundRValuePlaceholder(actualReceiver.Syntax, actualReceiver.Type)
Binding\Binder_Expressions.vb (71)
130Dim reclassified = ReclassifyArrayLiteralExpression(SyntaxKind.CTypeKeyword, arrayLiteral.Syntax, ConversionKind.Widening, False, arrayLiteral, arrayLiteral.InferredType, diagnostics)
324Return New BoundBadExpression(wrappedBadExpression.Syntax, resultKind, wrappedBadExpression.Symbols, wrappedBadExpression.ChildBoundNodes, wrappedBadExpression.Type, hasErrors:=True)
326Return New BoundBadExpression(wrappedExpression.Syntax, resultKind, ImmutableArray(Of Symbol).Empty, ImmutableArray.Create(wrappedExpression), wrappedExpression.Type, hasErrors:=True)
552expressionType = GetSpecialType(SpecialType.System_Object, expression.Syntax, diagnostics)
738ReportDiagnostic(diagnostics, group.TypeArgumentsOpt.Syntax, ERRID.ERR_MethodTypeArgsUnexpected)
972resultType = GetSpecialType(SpecialType.System_Nullable_T, expr.Syntax, diagnostics).Construct(resultType)
976ReportDiagnostic(diagnostics, access.Syntax, ERRID.ERR_CannotBeMadeNullable1, resultType)
1002ReportDiagnostic(diagnostics, group.Syntax, ERRID.ERR_InvalidConstructorCall)
1003Return New BoundBadVariable(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
1006expr = BindInvocationExpression(expr.Syntax,
1007expr.Syntax,
1008ExtractTypeCharacter(expr.Syntax),
1013callerInfoOpt:=expr.Syntax)
1023ReportDiagnostic(diagnostics, expr.Syntax, GetTypeNotExpressionErrorId(type), type)
1024Return New BoundBadVariable(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
1030ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_CannotCallEvent1, DirectCast(expr, BoundEventAccess).EventSymbol)
1031Return New BoundBadVariable(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
1034ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_NamespaceNotExpression1, DirectCast(expr, BoundNamespaceExpression).NamespaceSymbol)
1035Return New BoundBadVariable(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
1038ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_VoidValue, DirectCast(expr, BoundLabel).Label.Name)
1039Return New BoundBadVariable(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
1142ReportDiagnostic(diagnostics, typeExpr.Syntax, ERRID.ERR_CantReferToMyGroupInsideGroupType1, classType)
1151result = New BoundPropertyAccess(typeExpr.Syntax, access.PropertySymbol, access.PropertyGroupOpt, access.AccessKind,
1162result = New BoundFieldAccess(typeExpr.Syntax, access.ReceiverOpt, access.FieldSymbol, access.IsLValue,
1167result = New BoundCall(typeExpr.Syntax, [call].Method, [call].MethodGroupOpt, [call].ReceiverOpt, [call].Arguments,
1248Return BadExpression(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated()
1255Dim syntax = expr.Syntax
1387ReportUseSite(diagnostics, expr.Syntax, getMethod)
1388ReportDiagnosticsIfObsoleteOrNotSupported(diagnostics, getMethod, expr.Syntax)
1438Return New BoundConversion(expr.Syntax, expr, ConversionKind.WideningNothingLiteral, False, False, expr.ConstantValueOpt,
1439GetSpecialType(SpecialType.System_Object, expr.Syntax, diagnostics), Nothing)
1458ReportDiagnostic(diagnostics, address.MethodGroup.Syntax, GetInaccessibleErrorInfo(address.MethodGroup.Methods(0)))
1460ReportDiagnostic(diagnostics, address.MethodGroup.Syntax, ERRID.ERR_NoViableOverloadCandidates1,
1483ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_VoidValue)
1484Return BadExpression(expr.Syntax, expr, ErrorTypeSymbol.UnknownResultType)
1505ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ERRID.ERR_ArrayInitNoType)
1507ReportNoConversionError(arrayLiteral.Syntax, arrayLiteral.InferredType, destination, diagnostics, Nothing)
1511Dim argument As BoundExpression = ApplyImplicitConversion(arrayLiteral.Syntax, arrayLiteral.InferredType, arrayLiteral, BindingDiagnosticBag.Discarded)
1562bounds = CreateArrayBounds(arrayLiteral.Syntax, knownSizes, diagnostics)
1572Dim arrayCreation = New BoundArrayCreation(arrayLiteral.Syntax, bounds, arrayInitialization, arrayLiteral, conv, sourceType)
1583expr = CreatePredefinedConversion(arrayLiteral.Syntax, arrayCreation, conv, isExplicit, destination, diagnostics)
1609ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ERRID.ERR_RestrictedType1, targetElementType)
1612ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ERRID.ERR_ArrayInitNoType)
1618ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ERRID.ERR_ArrayInitNoTypeObjectDisallowed)
1620ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ERRID.ERR_ArrayInitTooManyTypesObjectDisallowed)
1624ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ErrorFactory.ErrorInfo(ERRID.WRN_ObjectAssumed1,
1627ReportDiagnostic(diagnostics, arrayLiteral.Syntax, ErrorFactory.ErrorInfo(ERRID.WRN_ObjectAssumed1,
1644expr = ApplyImplicitConversion(expr.Syntax, elementType, expr, diagnostics)
1649arrayInitialization = New BoundArrayInitialization(arrayInitialization.Syntax, initializers.ToImmutableAndFree, Nothing)
1664arrayInitialization = New BoundArrayInitialization(arrayInitialization.Syntax, initializers, Nothing).MakeCompilerGenerated()
1668Return New BoundArrayInitialization(arrayInitialization.Syntax, initializers, Nothing)
1676Return ApplyImplicitConversion(tupleLiteral.Syntax,
1686Return ApplyImplicitConversion(arrayLiteral.Syntax,
1696Return ApplyImplicitConversion(lambda.Syntax,
1801ReportDiagnostic(diagnostics, expr.Syntax, err)
2161placeholder = New BoundRValuePlaceholder(testExpression.Syntax, testExpression.Type.GetNullableUnderlyingTypeOrSelf())
2165convertedTestExpression = ApplyConversion(testExpression.Syntax, type,
3674If receiver IsNot Nothing AndAlso receiver.Kind = BoundKind.TypeExpression AndAlso IsReceiverOfNameOfArgument(receiver.Syntax) Then
3675receiver = New BoundTypeAsValueExpression(receiver.Syntax, DirectCast(receiver, BoundTypeExpression), receiver.Type).MakeCompilerGenerated()
3789left.Syntax,
3835Dim syntax = expr.Syntax
3853ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_QualNotObjectRecord1, expr.Type)
3860ReportDiagnostic(diagnostics, expr.Syntax, ERRID.ERR_DefaultMemberNotProperty1, expr.Type)
3922convertedArguments.Add(ApplyImplicitConversion(argument.Syntax, int32Type, argument, diagnostics))
4669ReportDiagnostic(diagnostics, operand.Syntax, ERRID.ERR_CantAwaitAsyncSub1, method.Name)
4699Dim awaitableInstancePlaceholder = New BoundRValuePlaceholder(operand.Syntax, operand.Type).MakeCompilerGenerated()
4714awaiterInstancePlaceholder = New BoundLValuePlaceholder(operand.Syntax, getAwaiter.Type).MakeCompilerGenerated()
4752operand.Syntax,
4786awaiterInstancePlaceholder = New BoundLValuePlaceholder(operand.Syntax, getAwaiter.Type).MakeCompilerGenerated()
4801operand.Syntax,
4850operand.Syntax,
Binding\Binder_Initializers.vb (9)
62Dim block As New BoundBlock(Me.BoundInitializers(0).Syntax,
216expression = ApplyImplicitConversion(expression.Syntax, submissionReturnType, expression, diagnostics)
217boundStatement = New BoundExpressionStatement(boundStatement.Syntax, expression, expression.HasErrors)
429boundInitExpression = ApplyImplicitConversion(boundInitExpression.Syntax,
529boundInitValue = New BoundBadExpression(boundInitValue.Syntax,
547boundInitValue = ApplyImplicitConversion(boundInitValue.Syntax, targetType, boundInitValue, initValueDiagnostics)
573boundInitValue = BadExpression(boundInitValue.Syntax, boundInitValue, targetType)
658boundInitValue = ApplyImplicitConversion(boundInitValue.Syntax, targetType, boundInitValue, diagnostics)
664boundInitValue = BadExpression(boundInitValue.Syntax, boundInitValue, targetType)
Binding\Binder_InterpolatedString.vb (6)
166Dim methodGroup = New BoundMethodGroup(node.Syntax, Nothing, lookup.Symbols.ToDowncastedImmutable(Of MethodSymbol), lookup.Kind, Nothing, QualificationKind.QualifiedViaTypeName).MakeCompilerGenerated()
217arguments(0) = CreateStringLiteral(node.Syntax, formatStringBuilderHandle.ToStringAndFree(), compilerGenerated:=True, diagnostics)
219Dim result As BoundExpression = MakeRValue(BindInvocationExpression(node.Syntax,
220node.Syntax,
230result = ApplyImplicitConversion(node.Syntax, targetType, result, diagnostics).MakeCompilerGenerated()
240ReportDiagnostic(diagnostics, node.Syntax, ErrorFactory.ErrorInfo(ERRID.ERR_InterpolatedStringFactoryError, factoryType.Name, factoryMethodName))
Binding\Binder_Invocation.vb (67)
124allowConstructorCall:=True, callerInfoOpt:=group.Syntax)
130ReportDiagnostic(diagnostics, group.Syntax, ERRID.ERR_InvalidConstructorCall)
138allowConstructorCall:=True, callerInfoOpt:=group.Syntax)
143callExpr.Syntax,
296ReportDiagnostic(diagnostics, target.Syntax, ERRID.ERR_DelegateNoInvoke1, target.Type)
299ElseIf ReportDelegateInvokeUseSite(diagnostics, target.Syntax, targetType, delegateInvoke) Then
425callerInfoOpt:=group.Syntax)
435If receiverOpt?.Syntax Is withoutArgs.Syntax AndAlso Not receiverOpt.WasCompilerGenerated Then
443If receiverOpt?.Syntax Is withoutArgs.Syntax AndAlso Not receiverOpt.WasCompilerGenerated Then
489callerInfoOpt:=group.Syntax)
503If(node.Expression, group.Syntax),
509callerInfoOpt:=group.Syntax)
868receiver = AdjustReceiverTypeOrValue(receiver, receiver.Syntax, methodOrProperty.IsShared, diagnostics, resolvedTypeOrValueReceiver)
875ReportDiagnostic(diagnostics, group.Syntax,
885Dim errorLocation As SyntaxNode = lambda.Syntax
1006ReportDiagnostic(diagnostics, propertyAccess.Syntax, ERRID.WRN_RecursivePropertyCall, [property])
1300If node.SyntaxTree Is groupOpt.Syntax.SyntaxTree AndAlso node.Span.Contains(groupOpt.Syntax.Span) Then
1301result = groupOpt.Syntax
1303If result Is node AndAlso (groupOpt.ReceiverOpt Is Nothing OrElse groupOpt.ReceiverOpt.Syntax Is result) Then
1393ReportDiagnostic(diagnostics, If(groupOpt IsNot Nothing, groupOpt.Syntax, node), GetInaccessibleErrorInfo(singleCandidate.UnderlyingSymbol))
1396ReportDiagnostic(diagnostics, If(groupOpt IsNot Nothing, groupOpt.Syntax, node), ERRID.ERR_NoViableOverloadCandidates1, bestSymbols(0).Name)
1461ReportDiagnostic(diagnostics, mg.TypeArgumentsOpt.Syntax,
1465ReportDiagnostic(diagnostics, mg.TypeArgumentsOpt.Syntax,
1473ReportDiagnostic(diagnostics, mg.TypeArgumentsOpt.Syntax,
1477ReportDiagnostic(diagnostics, mg.TypeArgumentsOpt.Syntax,
1947If argument.Syntax.SyntaxTree Is diagnostic.Location.SourceTree AndAlso
1949If argument.Syntax.Span.Contains(diagnostic.Location.SourceSpan) Then
2063ReportDiagnostic(diagnostics, arguments(i).Syntax, ERRID.ERR_TooManyArgs)
2065ReportDiagnostic(diagnostics, arguments(i).Syntax,
2069ReportDiagnostic(diagnostics, arguments(i).Syntax,
2088ReportDiagnostic(diagnostics, arguments(i).Syntax, ERRID.ERR_OmittedParamArrayArgument)
2122ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(seenOutOfPositionNamedArgIndex).Syntax),
2132ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax), ERRID.ERR_NamedParamNotFound1, argumentNames(i))
2134ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2138ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2149ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax), ERRID.ERR_NamedParamArrayArgument)
2159ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax), ERRID.ERR_NamedArgUsedTwice1, argumentNames(i))
2161ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2165ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2180ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax), ERRID.ERR_NamedArgAlsoOmitted1, argumentNames(i))
2182ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2186ReportDiagnostic(diagnostics, GetNamedArgumentIdentifier(arguments(i).Syntax),
2394ReportDiagnostic(diagnostics, paramArrayArgument.Syntax, ERRID.ERR_ParamArrayArgumentMismatch)
2494Dim boundTemp = New BoundRValuePlaceholder(argument.Syntax, targetType)
2500CreateConversionAndReportDiagnostic(argument.Syntax, boundTemp, conv, False, copyBackType, diagnostics, copybackConversionParamName:=param.Name)
2506CreateConversionAndReportDiagnostic(argument.Syntax, boundTemp, conv, False, copyBackType, diagnostics, copybackConversionParamName:=param.Name)
2508ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_ArgumentCopyBackNarrowing3,
2525ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_ReadOnlyInClosure)
2558CreateConversionAndReportDiagnostic(argument.Syntax, argument, conv, False, targetType, diagnostics)
2575CreateConversionAndReportDiagnostic(argument.Syntax, argument, conv, False, targetType, diagnostics)
2610ReportDiagnostic(diagnostics, argument.Syntax, ERRID.ERR_ArgumentNarrowing2,
2613ReportDiagnostic(diagnostics, argument.Syntax, err,
2728argument = ApplyImplicitConversion(argument.Syntax, targetType, argument, diagnostics)
2763ReportUseSite(diagnostics, argument.Syntax, useSiteInfo)
2850Dim inPlaceholder = New BoundByRefArgumentPlaceholder(argument.Syntax, isOutParameter, argument.Type, argument.HasErrors).MakeCompilerGenerated()
2851Dim inConversion = CreateConversionAndReportDiagnostic(argument.Syntax,
2856Dim outPlaceholder = New BoundRValuePlaceholder(argument.Syntax, targetType).MakeCompilerGenerated()
2865Dim outConversion = CreateConversionAndReportDiagnostic(argument.Syntax, outPlaceholder, conversionFrom,
2875Dim copyBackExpression = BindAssignment(argument.Syntax, argument, outConversion, diagnostics)
2891Return New BoundByRefArgumentWithCopyBack(argument.Syntax, argument,
2903argument.Syntax.Location,
2904DirectCast(argument.Syntax.SyntaxTree.Options, VisualBasicParseOptions).LanguageVersion,
2966argument = CreateConversionAndReportDiagnostic(argument.Syntax, argument, conversion, False, targetType, diagnostics)
3158argumentSyntax = reducedExtensionReceiverOpt.Syntax
Binding\Binder_Lambda.vb (18)
218Dim lambdaSymbol As New SourceLambdaSymbol(source.Syntax, source, parameters, targetReturnType, Me)
314Return New BoundLambda(source.Syntax, lambdaSymbol, block,
455expression = bodyBinder.ApplyImplicitConversion(expression.Syntax, retType, expression, diagnostics, False)
461Dim boundReturn = New BoundReturnStatement(expression.Syntax,
639ReportDiagnostic(_diagnostics, node.Syntax, ERRID.ERR_BadAwaitInTryHandler)
756receiverOpt = New BoundFieldAccess(argument.Syntax, receiverOpt, fieldSymbol,
810parameterDescriptors(i) = New AnonymousTypeField(returnParamName, returnType, source.Syntax.GetLocation(), False)
812Dim typeDescriptor As New AnonymousTypeDescriptor(parameterDescriptors.AsImmutableOrNull(), source.Syntax.GetLocation(), True)
903Dim symbol = New SourceLambdaSymbol(source.Syntax, source, parameters, LambdaSymbol.ReturnTypeIsBeingInferred, Me)
920lambdaReturnType = GetWellKnownType(WellKnownType.System_Threading_Tasks_Task, source.Syntax, diagnostics)
925lambdaReturnType = GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, source.Syntax, diagnostics).
926Construct(GetSpecialType(SpecialType.System_Object, source.Syntax, diagnostics))
942lambdaReturnType = GetSpecialType(SpecialType.System_Object, source.Syntax, diagnostics)
953lambdaReturnType = InferDominantTypeOfExpressions(source.Syntax, returnExpressions, diagnostics, numCandidates)
993lambdaReturnType = GetWellKnownType(WellKnownType.System_Threading_Tasks_Task_T, source.Syntax, diagnostics).Construct(lambdaReturnType)
997lambdaReturnType = GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, source.Syntax, diagnostics).Construct(lambdaReturnType)
1008Dim lambdaSyntax = TryCast(source.Syntax, LambdaExpressionSyntax)
1014Return source.Syntax
Binding\Binder_Operators.vb (25)
110result = ApplyImplicitConversion(targetArgument.Syntax,
111GetSpecialType(SpecialType.System_Object, targetArgument.Syntax, diagnostics),
117ReportDiagnostic(diagnostics, targetArgument.Syntax,
126ReportDiagnostic(diagnostics, targetArgument.Syntax,
133result = ApplyImplicitConversion(targetArgument.Syntax,
134GetSpecialType(SpecialType.System_Object, targetArgument.Syntax, diagnostics),
139ReportDiagnostic(diagnostics, targetArgument.Syntax,
439ReportDiagnostic(diagnostics, left.Syntax, ErrorFactory.ErrorInfo(errorId, operatorTokenKind))
443ReportDiagnostic(diagnostics, right.Syntax, ErrorFactory.ErrorInfo(errorId, operatorTokenKind))
471left = ApplyConversion(left.Syntax, operandType, left, explicitSemanticForConcatArgument, diagnostics,
495right = ApplyImplicitConversion(right.Syntax, rightTargetType, right, diagnostics)
499right = ApplyConversion(right.Syntax, operandType, right, explicitSemanticForConcatArgument, diagnostics,
538ReportDiagnostic(diagnostics, right.Syntax, ErrorFactory.ErrorInfo(ERRID.ERR_ConstantStringTooLong))
573Dim nothingStr = New BoundLiteral(left.Syntax, ConstantValue.Nothing, stringType).MakeCompilerGenerated()
575Return AnalyzeConversionAndCreateBinaryConditionalExpression(left.Syntax,
701leftPlaceholder = New BoundRValuePlaceholder(left.Syntax, operatorType).MakeCompilerGenerated()
801ReportDiagnostic(diagnostics, operand.Syntax,
821stringType = GetSpecialType(SpecialType.System_String, dbNullOperand.Syntax, diagnostics)
824dbNullOperand = New BoundConversion(dbNullOperand.Syntax, dbNullOperand, ConversionKind.Widening,
1055rightType = GetSpecialType(defaultRightSpecialType, right.Syntax, diagnostics)
1056right = ApplyImplicitConversion(right.Syntax,
1094leftType = GetSpecialType(defaultLeftSpecialType, left.Syntax, diagnostics)
1097left = ApplyImplicitConversion(left.Syntax,
1123rightType = GetSpecialType(SpecialType.System_String, right.Syntax, diagnostics)
1128right = ApplyImplicitConversion(right.Syntax,
Binding\Binder_Query.vb (21)
586Dim fromClauseSyntax = DirectCast(source.Syntax.Parent, FromClauseSyntax)
621boundCallOrBadExpression = BindQueryOperatorCall(source.Syntax.Parent, source,
624source.Syntax.Span,
629Return New BoundQueryClause(source.Syntax.Parent,
785Debug.Assert(Not skipFirstVariable OrElse source.Syntax Is variables.First)
3319outerKey = BadExpression(outerKey.Syntax, outerKey, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated()
3322innerKey = BadExpression(innerKey.Syntax, innerKey, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated()
3513outerKey = outerKeyBinder.ApplyImplicitConversion(outerKey.Syntax, targetType, outerKey, diagnostics, False)
3514innerKey = innerKeyBinder.ApplyImplicitConversion(innerKey.Syntax, targetType, innerKey, diagnostics, False)
3561ReportDiagnostic(diagnostics, outerKey.Syntax, errorInfo)
3576ReportDiagnostic(diagnostics, innerKey.Syntax, errorInfo)
3714ReportDiagnostic(_diagnostics, node.Syntax, _errorInfo)
4300Return New BoundQueryClause(source.Syntax,
4352Dim asQueryable As BoundExpression = BindQueryOperatorCall(source.Syntax, source, StringConstants.AsQueryableMethod,
4354source.Syntax.Span, additionalDiagnostics)
4370Dim asEnumerable As BoundExpression = BindQueryOperatorCall(source.Syntax, source, StringConstants.AsEnumerableMethod,
4372source.Syntax.Span, additionalDiagnostics)
4389inferredType = GetSpecialType(SpecialType.System_Object, source.Syntax, additionalDiagnostics)
4391Dim cast As BoundExpression = BindQueryOperatorCall(source.Syntax, source, StringConstants.CastMethod,
4392New BoundTypeArguments(source.Syntax,
4395source.Syntax.Span, additionalDiagnostics)
Binding\Binder_SelectCase.vb (7)
390Dim booleanType = GetSpecialType(SpecialType.System_Boolean, selectExpression.Syntax, diagnostics)
441caseStatementCondition = ApplyImplicitConversion(caseStatementCondition.Syntax, booleanType, caseStatementCondition, diagnostics:=diagnostics, isOperandOfConditionalBranch:=True)
471Dim syntax = DirectCast(boundClause.Syntax, RelationalCaseClauseSyntax)
492conditionOpt = If(boundClause.ConditionOpt, BindBinaryOperator(node:=boundClause.Syntax,
505Dim syntax = boundClause.Syntax
513node:=boundClause.Syntax,
677ReportDiagnostic(diagnostics, rangeCaseClause.Syntax, ERRID.WRN_SelectCaseInvalidRange)
Binding\Binder_Statements.vb (29)
552_resumeWithoutLabel = DirectCast(node.Syntax, StatementSyntax)
557ReportDiagnostic(_diagnostics, node.Syntax,
572_resumeWithoutLabel = DirectCast(node.Syntax, StatementSyntax)
608ReportDiagnostic(_diagnostics, node.Syntax, ERRID.ERR_BadAwaitInTryHandler)
628If Not node.WasCompilerGenerated AndAlso node.Syntax.Kind = SyntaxKind.LabelStatement AndAlso
629DirectCast(node.Syntax, LabelStatementSyntax).LabelToken.Kind = SyntaxKind.IntegerLiteralToken Then
1196declarationInitializer = ApplyImplicitConversion(declarationInitializer.Syntax, type, declarationInitializer, diagnostics)
1972If ReportUseSite(diagnostics, op1.Syntax, setMethod) Then
2014op2 = ApplyImplicitConversion(op2.Syntax, targetType, op2, diagnostics)
2058placeholder = New BoundCompoundAssignmentTargetPlaceholder(left.Syntax, targetType).MakeCompilerGenerated()
2726ReportDiagnostic(diagnostics, boundInvocation.Syntax, ERRID.ERR_PropertyAccessIgnored)
2742ReportDiagnostic(diagnostics, boundInvocation.Syntax, ERRID.ERR_PropertyAccessIgnored)
2751GetSpecialType(SpecialType.System_Void, conditionalAccess.Syntax, diagnostics))
3171initialValue = ApplyImplicitConversion(initialValue.Syntax, targetType, initialValue, diagnostics)
3172limit = ApplyImplicitConversion(limit.Syntax, targetType, limit, diagnostics)
3174stepValue = ApplyConversion(stepValue.Syntax, targetType, stepValue,
3438Dim collectionSyntax = collection.Syntax
3633ReportDiagnostic(diagnostics, controlVariable.Syntax, ERRID.ERR_LoopControlMustNotBeProperty)
3648ReportDiagnostic(diagnostics, controlVariable.Syntax, ERRID.ERR_LoopControlMustNotAwait)
3738Dim collectionSyntax = collection.Syntax
4087Dim collectionSyntax = collection.Syntax
4463Dim declarationSyntax = localDeclarations.Syntax
4505VerifyUsingVariableDeclarationAndBuildUsingInfo(localDeclaration.Syntax,
4732lockExpression.Syntax,
4735ReportDiagnostic(diagnostics, lockExpression.Syntax, ERRID.ERR_LockTypeUnsupported)
4814exceptionSource = BadExpression(exceptionSource.Syntax, exceptionSource, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated()
5064ReportDiagnostic(diagnostics, arg.Syntax, ERRID.ERR_BadAsyncReturnOperand1, retType)
5070arg = ApplyImplicitConversion(arg.Syntax, retType, arg, diagnostics)
5165arg = ApplyImplicitConversion(arg.Syntax, retType, arg, diagnostics)
Binding\Binder_Utils.vb (8)
1305ReportDiagnostic(diagnostics, boundExpression.Syntax, ERRID.ERR_RequiredConstExpr)
1355ReportDiagnostic(diagnostics, boundExpression.Syntax, ERRID.ERR_RequiredConstExpr)
1406operand.Syntax,
1408If(operandType, GetSpecialType(SpecialType.System_Object, operand.Syntax, diagnostics)),
1448operand.Syntax,
1467Dim conversionToUnderlying As BoundExpression = ApplyConversion(operand.Syntax, conversionType.GetNullableUnderlyingType(), operand, isExplicit:=True, diagnostics:=BindingDiagnosticBag.Discarded)
1477operand.Syntax,
1509operand.Syntax,
CodeGen\EmitConversion.vb (27)
78_builder.EmitConstantValue(ConstantValue.Default(underlyingFrom.GetConstantValueTypeDiscriminator()), conversion.Syntax)
163EmitLoadDefaultValueOfTypeFromNothingLiteral(typeTo, used:=True, syntaxNode:=conversion.Syntax)
180EmitBox(typeFrom, conversion.Operand.Syntax)
182EmitSymbolToken(typeTo, conversion.Syntax)
185EmitBox(typeFrom, conversion.Operand.Syntax)
193EmitUnboxAny(typeTo, conversion.Syntax)
229EmitInitObj(typeTo, used:=True, syntaxNode:=conversion.Syntax)
234_diagnostics.Add(New VBDiagnostic(diagnosticInfo, conversion.Syntax.Location))
237EmitNewObj(constructor, ImmutableArray(Of BoundExpression).Empty, used:=True, syntaxNode:=conversion.Syntax)
246EmitSymbolToken(typeTo, conversion.Syntax)
308EmitLoadDefaultValueOfTypeParameter(conversion.Type, used, conversion.Syntax)
315EmitUnboxAny(conversion.Type, conversion.Syntax)
335EmitBox(typeFrom, conversion.Operand.Syntax)
340EmitSymbolToken(typeTo, conversion.Syntax)
345EmitSymbolToken(typeTo, conversion.Syntax)
350EmitUnboxAny(typeTo, conversion.Syntax)
361EmitBox(typeFrom, conversion.Operand.Syntax)
365EmitSymbolToken(typeTo, conversion.Syntax)
369EmitBox(typeFrom, conversion.Operand.Syntax)
377EmitSymbolToken(typeTo, conversion.Syntax)
420EmitSymbolToken(typeTo, conversion.Syntax)
434EmitUnboxAny(typeTo, conversion.Syntax)
474EmitLoadDefaultValueOfTypeParameter(conversion.Type, used:=True, syntaxNode:=conversion.Syntax)
495EmitBox(typeFrom, conversion.Operand.Syntax)
499EmitSymbolToken(typeTo, conversion.Syntax)
503EmitSymbolToken(typeTo, conversion.Syntax)
514EmitBox(typeFrom, conversion.Operand.Syntax)
CodeGen\EmitExpression.vb (81)
42EmitConstantExpression(expression.Type, constantValue, used, expression.Syntax)
218EmitLoadIndirect(expression.Type, expression.Syntax)
233EmitInitObj(receiverType, True, expression.Syntax)
234EmitBox(receiverType, expression.Syntax)
260receiverTemp = AllocateTemp(receiverType, receiver.Syntax)
275EmitSymbolToken(hasValue.AsMember(DirectCast(receiverType, NamedTypeSymbol)), conditional.Syntax)
341EmitInitObj(receiverType, True, receiver.Syntax)
342EmitBox(receiverType, receiver.Syntax)
344EmitLoadIndirect(receiverType, receiver.Syntax)
346temp = AllocateTemp(receiverType, receiver.Syntax)
350EmitBox(receiverType, receiver.Syntax)
359EmitLoadIndirect(receiverType, receiver.Syntax)
360EmitBox(receiverType, receiver.Syntax)
369EmitBox(receiverType, receiver.Syntax)
432EmitInitObj(receiverType, True, expression.Syntax)
433EmitBox(receiverType, expression.Syntax)
449EmitDelegateCreation(expression.ReceiverOpt, invoke, expression.Type, used, expression.Syntax)
466EmitLoadIndirect(local.Type, local.Syntax)
485EmitBox(receiver.Type, receiver.Syntax)
524EmitSymbolToken(thisRef.Type, thisRef.Syntax)
539Me.DefineLocal(local, sequence.Syntax)
648EmitSymbolToken(elementType, arrayAccess.Expression.Syntax)
652_builder.EmitArrayElementLoad(_module.Translate(DirectCast(arrayAccess.Expression.Type, ArrayTypeSymbol)), arrayAccess.Expression.Syntax)
674EmitStaticFieldLoad(field, used, fieldAccess.Syntax)
692EmitLoadIndirect(dupExpression.Type, dupExpression.Syntax)
724EmitSymbolToken(field, fieldAccess.Syntax)
749EmitSymbolToken(receiver.Type, receiver.Syntax)
758EmitSymbolToken(field, fieldAccess.Syntax)
832EmitLoadIndirect(parameterType, parameter.Syntax)
992Debug.Assert(Not Me._module.AllowOmissionOfConditionalCalls OrElse Not method.CallsAreOmitted([call].Syntax, [call].SyntaxTree))
1069EmitBox(receiverType, receiver.Syntax)
1113EmitSymbolToken(receiver.Type, receiver.Syntax)
1118EmitSymbolToken(method, [call].Syntax)
1153EmitLoadIndirect(method.ReturnType, [call].Syntax)
1241EmitInitObj(receiverType, True, receiver.Syntax)
1242EmitBox(receiverType, receiver.Syntax)
1249EmitLoadIndirect(receiverType, receiver.Syntax)
1250tempOpt = AllocateTemp(receiverType, receiver.Syntax)
1344EmitSymbolToken(typeTo, expression.Syntax)
1425EmitStaticCast(expr.Type, expr.Syntax)
1442EmitStaticCast(expr.Type, expr.Syntax)
1446EmitStaticCast(expr.Type, expr.Syntax)
1476EmitStaticCast(expr.Type, expr.Syntax)
1484EmitBox(expr.Type, expr.TestExpression.Syntax)
1498EmitStaticCast(expr.Type, expr.Syntax)
1501EmitStaticCast(expr.Type, expr.Syntax)
1631EmitSymbolToken(arrayType.ElementType, expression.Syntax)
1633_builder.EmitArrayCreation(_module.Translate(arrayType), expression.Syntax)
1666EmitInitObj(expression.Type, used, expression.Syntax)
1669EmitNewObj(expression.ConstructorOpt, expression.Arguments, used, expression.Syntax)
1718EmitInitObj(target.Type, True, target.Syntax)
1727EmitSymbolToken(target.Type, target.Syntax)
1862Me.EmitSymbolToken(target.Type, target.Syntax)
1880Me.EmitSymbolToken(constructor, objCreation.Syntax)
1972Me.DefineLocal(local, sequence.Syntax)
2000temp = Me.AllocateTemp(assignmentOperator.Left.Type, assignmentOperator.Left.Syntax)
2036EmitLoadIndirect(capture.Type, capture.Syntax)
2049EmitStoreIndirect(boundLocal.LocalSymbol.Type, expression.Syntax)
2059EmitStoreIndirect(expression.Type, expression.Syntax)
2064EmitArrayElementStore(arrayType, expression.Syntax)
2086EmitStoreIndirect(expression.Type, expression.Syntax)
2103EmitSymbolToken(thisRef.Type, thisRef.Syntax)
2175EmitSymbolToken(field, fieldAccess.Syntax)
2186EmitStoreIndirect(parameter.ParameterSymbol.Type, parameter.Syntax)
2248EmitSymbolToken(type, boundTypeOfOperator.SourceType.Syntax)
2253EmitSymbolToken(getTypeMethod, boundTypeOfOperator.Syntax)
2259EmitSymbolToken(node.Field, node.Syntax)
2268EmitSymbolToken(node.Field.ContainingType, node.Syntax)
2274EmitSymbolToken(getField, node.Syntax)
2277EmitSymbolToken(node.Type, node.Syntax)
2291EmitSymbolToken(method, node.Syntax)
2301EmitSymbolToken(method.ContainingType, node.Syntax)
2305EmitSymbolToken(node.GetMethodFromHandle, node.Syntax)
2308EmitSymbolToken(node.Type, node.Syntax)
2338EmitSymbolToken(symbol, node.Syntax, encodeAsRawDefinitionToken:=True)
2358_builder.EmitToken(_module.GetModuleVersionId(_module.Translate(node.Type, node.Syntax, _diagnostics), node.Syntax, _diagnostics), node.Syntax)
2377_builder.EmitToken(_module.GetInstrumentationPayloadRoot(node.AnalysisKind, _module.Translate(node.Type, node.Syntax, _diagnostics), node.Syntax, _diagnostics), node.Syntax)
CodeGen\EmitStatement.vb (22)
199exceptionType = Me._module.Translate(exceptionSource.Type, exceptionSource.Syntax, _diagnostics)
202exceptionType = Me._module.Translate(Me._module.Compilation.GetWellKnownType(WellKnownType.System_Exception), catchBlock.Syntax, _diagnostics)
230_builder.EmitToken(exceptionType, catchBlock.Syntax)
254_builder.EmitToken(exceptionType, catchBlock.Syntax)
257EmitSetProjectError(catchBlock.Syntax, catchBlock.ErrorLineNumberOpt)
281_builder.EmitToken(exceptionType, catchBlock.Syntax)
296DefineLocal(localOpt, If(Not declNodes.IsEmpty, DirectCast(declNodes(0).GetSyntax(), VisualBasicSyntaxNode), catchBlock.Syntax))
303EmitSetProjectError(catchBlock.Syntax, catchBlock.ErrorLineNumberOpt)
311EmitSymbolToken(exceptionSource.Type, exceptionSource.Syntax)
338Dim temp = AllocateTemp(exceptionSource.Type, exceptionSource.Syntax)
358Dim temp = AllocateTemp(exceptionSource.Type, exceptionSource.Syntax)
382EmitSetProjectError(catchBlock.Syntax, catchBlock.ErrorLineNumberOpt)
415EmitClearProjectError(catchBlock.Syntax)
803EmitBox(conditionType, condition.Syntax)
826Me.DefineLocal(local, sequence.Syntax)
854EmitClearProjectError(boundGotoStatement.Syntax)
915EmitBox(operandType, operand.Syntax)
1029Debug.Assert(caseBlock.Syntax.Kind = SyntaxKind.CaseElseBlock)
1051Dim syntax As SyntaxNode = selectExpression.Syntax
1201Debug.Assert(caseStatement.Syntax IsNot Nothing)
1204EmitSequencePoint(caseStatement.Syntax)
1230Me.DefineLocal(local, If(declNodes.IsEmpty, scope.Syntax, declNodes(0).GetVisualBasicSyntax()))
Generated\BoundNodes.xml.Generated.vb (172)
253Dim result = New BoundTypeArguments(Me.Syntax, arguments, Me.HasErrors)
280Dim result = New BoundOmittedArgument(Me.Syntax, type, Me.HasErrors)
339Dim result = New BoundLValueToRValueWrapper(Me.Syntax, underlyingLValue, type, Me.HasErrors)
410Dim result = New BoundWithLValueExpressionPlaceholder(Me.Syntax, type, Me.HasErrors)
443Dim result = New BoundWithRValueExpressionPlaceholder(Me.Syntax, type, Me.HasErrors)
483Dim result = New BoundRValuePlaceholder(Me.Syntax, type, Me.HasErrors)
523Dim result = New BoundLValuePlaceholder(Me.Syntax, type, Me.HasErrors)
559Dim result = New BoundDup(Me.Syntax, isReference, type, Me.HasErrors)
615Dim result = New BoundBadExpression(Me.Syntax, resultKind, symbols, childBoundNodes, type, Me.HasErrors)
649Dim result = New BoundBadStatement(Me.Syntax, childBoundNodes, Me.HasErrors)
688Dim result = New BoundParenthesized(Me.Syntax, expression, type, Me.HasErrors)
730Dim result = New BoundBadVariable(Me.Syntax, expression, isLValue, type, Me.HasErrors)
787Dim result = New BoundArrayAccess(Me.Syntax, expression, indices, isLValue, type, Me.HasErrors)
822Dim result = New BoundArrayLength(Me.Syntax, expression, type, Me.HasErrors)
865Dim result = New BoundGetType(Me.Syntax, sourceType, getTypeFromHandle, type, Me.HasErrors)
909Dim result = New BoundFieldInfo(Me.Syntax, field, type, Me.HasErrors)
964Dim result = New BoundMethodInfo(Me.Syntax, method, getMethodFromHandle, type, Me.HasErrors)
1006Dim result = New BoundTypeExpression(Me.Syntax, unevaluatedReceiverOpt, aliasOpt, type, Me.HasErrors)
1048Dim result = New BoundTypeOrValueExpression(Me.Syntax, data, type, Me.HasErrors)
1103Dim result = New BoundNamespaceExpression(Me.Syntax, unevaluatedReceiverOpt, aliasOpt, namespaceSymbol, Me.HasErrors)
1147Dim result = New BoundMethodDefIndex(Me.Syntax, method, type, Me.HasErrors)
1180Dim result = New BoundMaximumMethodDefIndex(Me.Syntax, type, Me.HasErrors)
1231Dim result = New BoundInstrumentationPayloadRoot(Me.Syntax, analysisKind, isLValue, type, Me.HasErrors)
1273Dim result = New BoundModuleVersionId(Me.Syntax, isLValue, type, Me.HasErrors)
1306Dim result = New BoundModuleVersionIdString(Me.Syntax, type, Me.HasErrors)
1350Dim result = New BoundSourceDocumentIndex(Me.Syntax, document, type, Me.HasErrors)
1414Dim result = New BoundUnaryOperator(Me.Syntax, operatorKind, operand, checked, constantValueOpt, type, Me.HasErrors)
1462Dim result = New BoundUserDefinedUnaryOperator(Me.Syntax, operatorKind, underlyingExpression, type, Me.HasErrors)
1502Dim result = New BoundNullableIsTrueOperator(Me.Syntax, operand, type, Me.HasErrors)
1575Dim result = New BoundBinaryOperator(Me.Syntax, operatorKind, left, right, checked, constantValueOpt, type, Me.HasErrors)
1631Dim result = New BoundUserDefinedBinaryOperator(Me.Syntax, operatorKind, underlyingExpression, checked, type, Me.HasErrors)
1695Dim result = New BoundUserDefinedShortCircuitingOperator(Me.Syntax, leftOperand, leftOperandPlaceholder, leftTest, bitwiseOperator, type, Me.HasErrors)
1728Dim result = New BoundCompoundAssignmentTargetPlaceholder(Me.Syntax, type, Me.HasErrors)
1793Dim result = New BoundAssignmentOperator(Me.Syntax, left, leftOnTheRightOpt, right, suppressObjectClone, type, Me.HasErrors)
1849Dim result = New BoundReferenceAssignment(Me.Syntax, byRefLocal, lValue, isLValue, type, Me.HasErrors)
1900Dim result = New BoundAddressOfOperator(Me.Syntax, binder, withDependencies, methodGroup, Me.HasErrors)
1966Dim result = New BoundTernaryConditionalExpression(Me.Syntax, condition, whenTrue, whenFalse, constantValueOpt, type, Me.HasErrors)
2039Dim result = New BoundBinaryConditionalExpression(Me.Syntax, testExpression, convertedTestExpression, testExpressionPlaceholder, elseExpression, constantValueOpt, type, Me.HasErrors)
2138Dim result = New BoundConversion(Me.Syntax, operand, conversionKind, checked, explicitCastInCode, constantValueOpt, extendedInfoOpt, type, Me.HasErrors)
2193Dim result = New BoundRelaxationLambda(Me.Syntax, lambda, receiverPlaceholderOpt, Me.HasErrors)
2241Dim result = New BoundConvertedTupleElements(Me.Syntax, elementPlaceholders, convertedElements, Me.HasErrors)
2289Dim result = New BoundUserDefinedConversion(Me.Syntax, underlyingExpression, inOutConversionFlags, type, Me.HasErrors)
2361Dim result = New BoundDirectCast(Me.Syntax, operand, conversionKind, suppressVirtualCalls, constantValueOpt, relaxationLambdaOpt, type, Me.HasErrors)
2425Dim result = New BoundTryCast(Me.Syntax, operand, conversionKind, constantValueOpt, relaxationLambdaOpt, type, Me.HasErrors)
2477Dim result = New BoundTypeOf(Me.Syntax, operand, isTypeOfIsNotExpression, targetType, type, Me.HasErrors)
2521Dim result = New BoundSequencePoint(Me.Syntax, statementOpt, Me.HasErrors)
2555Dim result = New BoundSequencePointExpression(Me.Syntax, expression, type, Me.HasErrors)
2594Dim result = New BoundSequencePointWithSpan(Me.Syntax, statementOpt, span, Me.HasErrors)
2630Dim result = New BoundNoOpStatement(Me.Syntax, flavor, Me.HasErrors)
2713Dim result = New BoundMethodGroup(Me.Syntax, typeArgumentsOpt, methods, pendingExtensionMethodsOpt, resultKind, receiverOpt, qualificationKind, Me.HasErrors)
2755Dim result = New BoundPropertyGroup(Me.Syntax, properties, resultKind, receiverOpt, qualificationKind, Me.HasErrors)
2807Dim result = New BoundReturnStatement(Me.Syntax, expressionOpt, functionLocalOpt, exitLabelOpt, Me.HasErrors)
2846Dim result = New BoundYieldStatement(Me.Syntax, expression, Me.HasErrors)
2877Dim result = New BoundThrowStatement(Me.Syntax, expressionOpt, Me.HasErrors)
2911Dim result = New BoundRedimStatement(Me.Syntax, clauses, Me.HasErrors)
2975Dim result = New BoundRedimClause(Me.Syntax, operand, indices, arrayTypeOpt, preserve, Me.HasErrors)
3009Dim result = New BoundEraseStatement(Me.Syntax, clauses, Me.HasErrors)
3106Dim result = New BoundCall(Me.Syntax, method, methodGroupOpt, receiverOpt, arguments, defaultArguments, constantValueOpt, isLValue, suppressObjectClone, type, Me.HasErrors)
3174Dim result = New BoundAttribute(Me.Syntax, constructor, constructorArguments, constructorDefaultArguments, namedArguments, resultKind, type, Me.HasErrors)
3245Dim result = New BoundLateMemberAccess(Me.Syntax, nameOpt, containerTypeOpt, receiverOpt, typeArgumentsOpt, accessKind, type, Me.HasErrors)
3317Dim result = New BoundLateInvocation(Me.Syntax, member, argumentsOpt, argumentNamesOpt, accessKind, methodOrPropertyGroupOpt, type, Me.HasErrors)
3360Dim result = New BoundLateAddressOfOperator(Me.Syntax, binder, memberAccess, type, Me.HasErrors)
3430Dim result = New BoundTupleLiteral(Me.Syntax, inferredType, argumentNamesOpt, inferredNamesOpt, arguments, type, Me.HasErrors)
3465Dim result = New BoundConvertedTupleLiteral(Me.Syntax, naturalTypeOpt, arguments, type, Me.HasErrors)
3554Dim result = New BoundObjectCreationExpression(Me.Syntax, constructorOpt, methodGroupOpt, arguments, defaultArguments, initializerOpt, type, Me.HasErrors)
3588Dim result = New BoundNoPiaObjectCreationExpression(Me.Syntax, guidString, initializerOpt, type, Me.HasErrors)
3639Dim result = New BoundAnonymousTypeCreationExpression(Me.Syntax, binderOpt, declarations, arguments, type, Me.HasErrors)
3690Dim result = New BoundAnonymousTypePropertyAccess(Me.Syntax, binder, propertyIndex, type, Me.HasErrors)
3733Dim result = New BoundAnonymousTypeFieldInitializer(Me.Syntax, binder, value, type, Me.HasErrors)
3800Dim result = New BoundObjectInitializerExpression(Me.Syntax, createTemporaryLocalForInitialization, placeholderOpt, initializers, type, Me.HasErrors)
3831Dim result = New BoundCollectionInitializerExpression(Me.Syntax, placeholderOpt, initializers, type, Me.HasErrors)
3862Dim result = New BoundNewT(Me.Syntax, initializerOpt, type, Me.HasErrors)
3929Dim result = New BoundDelegateCreationExpression(Me.Syntax, receiverOpt, method, relaxationLambdaOpt, relaxationReceiverPlaceholderOpt, methodGroupOpt, type, Me.HasErrors)
4001Dim result = New BoundArrayCreation(Me.Syntax, isParamArrayArgument, bounds, initializerOpt, arrayLiteralOpt, arrayLiteralConversion, type, Me.HasErrors)
4078Dim result = New BoundArrayLiteral(Me.Syntax, hasDominantType, numberOfCandidates, inferredType, bounds, initializer, binder, Me.HasErrors)
4112Dim result = New BoundArrayInitialization(Me.Syntax, initializers, type, Me.HasErrors)
4184Dim result = New BoundFieldAccess(Me.Syntax, receiverOpt, fieldSymbol, isLValue, suppressVirtualCalls, constantsInProgressOpt, type, Me.HasErrors)
4281Dim result = New BoundPropertyAccess(Me.Syntax, propertySymbol, propertyGroupOpt, accessKind, isWriteable, isLValue, receiverOpt, arguments, defaultArguments, type, Me.HasErrors)
4324Dim result = New BoundEventAccess(Me.Syntax, receiverOpt, eventSymbol, type, Me.HasErrors)
4375Dim result = New BoundBlock(Me.Syntax, statementListSyntax, locals, statements, Me.HasErrors)
4418Dim result = New BoundStateMachineScope(Me.Syntax, fields, statement, Me.HasErrors)
4494Dim result = New BoundLocalDeclaration(Me.Syntax, localSymbol, declarationInitializerOpt, identifierInitializerOpt, initializedByAsNew, Me.HasErrors)
4546Dim result = New BoundAsNewLocalDeclarations(Me.Syntax, localDeclarations, initializer, binder, Me.HasErrors)
4588Dim result = New BoundDimStatement(Me.Syntax, localDeclarations, initializerOpt, Me.HasErrors)
4685Dim result = New BoundFieldInitializer(Me.Syntax, initializedFields, memberAccessExpressionOpt, initialValue, binderOpt, Me.HasErrors)
4720Dim result = New BoundPropertyInitializer(Me.Syntax, initializedProperties, memberAccessExpressionOpt, initialValue, binderOpt, Me.HasErrors)
4763Dim result = New BoundParameterEqualsValue(Me.Syntax, parameter, value, Me.HasErrors)
4797Dim result = New BoundGlobalStatementInitializer(Me.Syntax, statement, Me.HasErrors)
4854Dim result = New BoundSequence(Me.Syntax, locals, sideEffects, valueOpt, type, Me.HasErrors)
4888Dim result = New BoundExpressionStatement(Me.Syntax, expression, Me.HasErrors)
4939Dim result = New BoundIfStatement(Me.Syntax, condition, consequence, alternativeOpt, Me.HasErrors)
5007Dim result = New BoundSelectStatement(Me.Syntax, expressionStatement, exprPlaceholderOpt, caseBlocks, recommendSwitchTable, exitLabel, Me.HasErrors)
5050Dim result = New BoundCaseBlock(Me.Syntax, caseStatement, body, Me.HasErrors)
5092Dim result = New BoundCaseStatement(Me.Syntax, caseClauses, conditionOpt, Me.HasErrors)
5158Dim result = New BoundSimpleCaseClause(Me.Syntax, valueOpt, conditionOpt, Me.HasErrors)
5218Dim result = New BoundRangeCaseClause(Me.Syntax, lowerBoundOpt, upperBoundOpt, lowerBoundConditionOpt, upperBoundConditionOpt, Me.HasErrors)
5254Dim result = New BoundRelationalCaseClause(Me.Syntax, operatorKind, valueOpt, conditionOpt, Me.HasErrors)
5361Dim result = New BoundDoLoopStatement(Me.Syntax, topConditionOpt, bottomConditionOpt, topConditionIsUntil, bottomConditionIsUntil, body, continueLabel, exitLabel, Me.HasErrors)
5406Dim result = New BoundWhileStatement(Me.Syntax, condition, body, continueLabel, exitLabel, Me.HasErrors)
5537Dim result = New BoundForToUserDefinedOperators(Me.Syntax, leftOperandPlaceholder, rightOperandPlaceholder, addition, subtraction, lessThanOrEqual, greaterThanOrEqual, Me.HasErrors)
5609Dim result = New BoundForToStatement(Me.Syntax, initialValue, limitValue, stepValue, checked, operatorsOpt, declaredOrInferredLocalOpt, controlVariable, body, nextVariablesOpt, continueLabel, exitLabel, Me.HasErrors)
5656Dim result = New BoundForEachStatement(Me.Syntax, collection, enumeratorInfo, declaredOrInferredLocalOpt, controlVariable, body, nextVariablesOpt, continueLabel, exitLabel, Me.HasErrors)
5698Dim result = New BoundExitStatement(Me.Syntax, label, Me.HasErrors)
5740Dim result = New BoundContinueStatement(Me.Syntax, label, Me.HasErrors)
5799Dim result = New BoundTryStatement(Me.Syntax, tryBlock, catchBlocks, finallyBlockOpt, exitLabelOpt, Me.HasErrors)
5873Dim result = New BoundCatchBlock(Me.Syntax, localOpt, exceptionSourceOpt, errorLineNumberOpt, exceptionFilterOpt, body, isSynthesizedAsyncCatchAll, Me.HasErrors)
5922Dim result = New BoundLiteral(Me.Syntax, value, type, Me.HasErrors)
5955Dim result = New BoundMeReference(Me.Syntax, type, Me.HasErrors)
5995Dim result = New BoundValueTypeMeReference(Me.Syntax, type, Me.HasErrors)
6028Dim result = New BoundMyBaseReference(Me.Syntax, type, Me.HasErrors)
6061Dim result = New BoundMyClassReference(Me.Syntax, type, Me.HasErrors)
6105Dim result = New BoundPreviousSubmissionReference(Me.Syntax, sourceType, type, Me.HasErrors)
6138Dim result = New BoundHostObjectMemberReference(Me.Syntax, type, Me.HasErrors)
6198Dim result = New BoundLocal(Me.Syntax, localSymbol, isLValue, type, Me.HasErrors)
6269Dim result = New BoundPseudoVariable(Me.Syntax, localSymbol, isLValue, emitExpressions, type, Me.HasErrors)
6331Dim result = New BoundParameter(Me.Syntax, parameterSymbol, isLValue, suppressVirtualCalls, type, Me.HasErrors)
6373Dim result = New BoundByRefArgumentPlaceholder(Me.Syntax, isOut, type, Me.HasErrors)
6448Dim result = New BoundByRefArgumentWithCopyBack(Me.Syntax, originalArgument, inConversion, inPlaceholder, outConversion, outPlaceholder, type, Me.HasErrors)
6496Dim result = New BoundLateBoundArgumentSupportingAssignmentWithCapture(Me.Syntax, originalArgument, localSymbol, type, Me.HasErrors)
6538Dim result = New BoundLabelStatement(Me.Syntax, label, Me.HasErrors)
6580Dim result = New BoundLabel(Me.Syntax, label, type, Me.HasErrors)
6622Dim result = New BoundGotoStatement(Me.Syntax, label, labelExpressionOpt, Me.HasErrors)
6656Dim result = New BoundStatementList(Me.Syntax, statements, Me.HasErrors)
6707Dim result = New BoundConditionalGoto(Me.Syntax, condition, jumpIfTrue, label, Me.HasErrors)
6759Dim result = New BoundWithStatement(Me.Syntax, originalExpression, body, binder, Me.HasErrors)
6848Dim result = New UnboundLambda(Me.Syntax, binder, flags, parameters, returnType, bindingCache, Me.HasErrors)
6928Dim result = New BoundLambda(Me.Syntax, lambdaSymbol, body, diagnostics, lambdaBinderOpt, delegateRelaxation, methodConversionKind, Me.HasErrors)
6963Dim result = New BoundQueryExpression(Me.Syntax, lastOperator, type, Me.HasErrors)
7017Dim result = New BoundQuerySource(Me.Syntax, expression, type, Me.HasErrors)
7052Dim result = New BoundToQueryableCollectionConversion(Me.Syntax, conversionCall, type, Me.HasErrors)
7155Dim result = New BoundQueryableSource(Me.Syntax, source, rangeVariableOpt, rangeVariables, compoundVariableType, binders, type, Me.HasErrors)
7193Dim result = New BoundQueryClause(Me.Syntax, underlyingExpression, rangeVariables, compoundVariableType, binders, type, Me.HasErrors)
7228Dim result = New BoundOrdering(Me.Syntax, underlyingExpression, type, Me.HasErrors)
7288Dim result = New BoundQueryLambda(Me.Syntax, lambdaSymbol, rangeVariables, expression, exprIsOperandOfConditionalBranch, Me.HasErrors)
7332Dim result = New BoundRangeVariableAssignment(Me.Syntax, rangeVariable, value, type, Me.HasErrors)
7396Dim result = New GroupTypeInferenceLambda(Me.Syntax, binder, parameters, compilation, Me.HasErrors)
7450Dim result = New BoundAggregateClause(Me.Syntax, capturedGroupOpt, groupPlaceholderOpt, underlyingExpression, rangeVariables, compoundVariableType, binders, type, Me.HasErrors)
7485Dim result = New BoundGroupAggregation(Me.Syntax, group, type, Me.HasErrors)
7529Dim result = New BoundRangeVariable(Me.Syntax, rangeVariable, type, Me.HasErrors)
7585Dim result = New BoundAddHandlerStatement(Me.Syntax, eventAccess, handler, Me.HasErrors)
7612Dim result = New BoundRemoveHandlerStatement(Me.Syntax, eventAccess, handler, Me.HasErrors)
7655Dim result = New BoundRaiseEventStatement(Me.Syntax, eventSymbol, eventInvocation, Me.HasErrors)
7723Dim result = New BoundUsingStatement(Me.Syntax, resourceList, resourceExpressionOpt, body, usingInfo, locals, Me.HasErrors)
7766Dim result = New BoundSyncLockStatement(Me.Syntax, lockExpression, body, Me.HasErrors)
7819Dim result = New BoundXmlName(Me.Syntax, xmlNamespace, localName, objectCreation, type, Me.HasErrors)
7863Dim result = New BoundXmlNamespace(Me.Syntax, xmlNamespace, objectCreation, type, Me.HasErrors)
7916Dim result = New BoundXmlDocument(Me.Syntax, declaration, childNodes, rewriterInfo, type, Me.HasErrors)
7975Dim result = New BoundXmlDeclaration(Me.Syntax, version, encoding, standalone, objectCreation, type, Me.HasErrors)
8028Dim result = New BoundXmlProcessingInstruction(Me.Syntax, target, data, objectCreation, type, Me.HasErrors)
8072Dim result = New BoundXmlComment(Me.Syntax, value, objectCreation, type, Me.HasErrors)
8138Dim result = New BoundXmlAttribute(Me.Syntax, name, value, matchesImport, objectCreation, type, Me.HasErrors)
8191Dim result = New BoundXmlElement(Me.Syntax, argument, childNodes, rewriterInfo, type, Me.HasErrors)
8226Dim result = New BoundXmlMemberAccess(Me.Syntax, memberAccess, type, Me.HasErrors)
8261Dim result = New BoundXmlEmbeddedExpression(Me.Syntax, expression, type, Me.HasErrors)
8305Dim result = New BoundXmlCData(Me.Syntax, value, objectCreation, type, Me.HasErrors)
8357Dim result = New BoundResumeStatement(Me.Syntax, resumeKind, labelOpt, labelExpressionOpt, Me.HasErrors)
8409Dim result = New BoundOnErrorStatement(Me.Syntax, onErrorKind, labelOpt, labelExpressionOpt, Me.HasErrors)
8480Dim result = New BoundUnstructuredExceptionHandlingStatement(Me.Syntax, containsOnError, containsResume, resumeWithoutLabelOpt, trackLineNumber, body, Me.HasErrors)
8529Dim result = New BoundUnstructuredExceptionHandlingCatchFilter(Me.Syntax, activeHandlerLocal, resumeTargetLocal, type, Me.HasErrors)
8577Dim result = New BoundUnstructuredExceptionOnErrorSwitch(Me.Syntax, value, jumps, Me.HasErrors)
8643Dim result = New BoundUnstructuredExceptionResumeSwitch(Me.Syntax, resumeTargetTemporary, resumeLabel, resumeNextLabel, jumps, Me.HasErrors)
8728Dim result = New BoundAwaitOperator(Me.Syntax, operand, awaitableInstancePlaceholder, getAwaiter, awaiterInstancePlaceholder, isCompleted, getResult, type, Me.HasErrors)
8793Dim result = New BoundSpillSequence(Me.Syntax, locals, spillFields, statements, valueOpt, type, Me.HasErrors)
8895Dim result = New BoundMidResult(Me.Syntax, original, start, lengthOpt, source, type, Me.HasErrors)
8947Dim result = New BoundConditionalAccess(Me.Syntax, receiver, placeholder, accessExpression, type, Me.HasErrors)
9005Dim result = New BoundConditionalAccessReceiverPlaceholder(Me.Syntax, placeholderId, capture, type, Me.HasErrors)
9078Dim result = New BoundLoweredConditionalAccess(Me.Syntax, receiver, captureReceiver, placeholderId, whenNotNull, whenNullOpt, type, Me.HasErrors)
9127Dim result = New BoundComplexConditionalAccessReceiver(Me.Syntax, valueTypeReceiver, referenceTypeReceiver, type, Me.HasErrors)
9175Dim result = New BoundNameOfOperator(Me.Syntax, argument, constantValueOpt, type, Me.HasErrors)
9215Dim result = New BoundTypeAsValueExpression(Me.Syntax, expression, type, Me.HasErrors)
9263Dim result = New BoundInterpolatedStringExpression(Me.Syntax, contents, constructionOpt, type, Me.HasErrors)
9313Dim result = New BoundInterpolation(Me.Syntax, expression, alignmentOpt, formatStringOpt, Me.HasErrors)
Lowering\Diagnostics\DiagnosticsPass.vb (7)
76Binder.ReportDiagnostic(Me._diagnostics, node.Syntax, ERRID.ERR_CannotLiftByRefParamQuery1, parameterSymbol.Name)
78Binder.ReportDiagnostic(Me._diagnostics, node.Syntax, ERRID.ERR_CannotLiftByRefParamLambda1, parameterSymbol.Name)
90Binder.ReportDiagnostic(Me._diagnostics, node.Syntax, errorId)
100Binder.ReportDiagnostic(Me._diagnostics, node.Syntax, errorId)
146Dim errorSyntax As SyntaxNode = node.Syntax
149If expr.Syntax IsNot errorSyntax Then
150errorSyntax = expr.Syntax
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter.vb (5)
108Dim r As New ExpressionLambdaRewriter(currentMethod, compilationState, typeMap, node.LambdaSymbol.ContainingBinder, node.Syntax, recursionDepth, diagnostics)
181Me.Diagnostics.Add(New VBDiagnostic(ErrorFactory.ErrorInfo(code, args), node.Syntax.GetLocation()))
194_factory.Syntax = node.Syntax
474receiverOpt = New BoundMeReference(receiverOpt.Syntax, method.ContainingType)
720node.Syntax,
Lowering\Instrumentation\CodeCoverageInstrumenter.vb (19)
50If Not HasValidMappedLineSpan(methodBody.Syntax) Then
62methodBody.Syntax,
68methodBody.Syntax,
121_methodPayload = methodBodyFactory.SynthesizedLocal(_payloadType, kind:=SynthesizedLocalKind.InstrumentationPayload, syntax:=methodBody.Syntax)
127Dim bodySyntax As SyntaxNode = methodBody.Syntax
272_methodBody.Syntax,
430Dim statementFactory As New SyntheticBoundNodeFactory(_methodBodyFactory.TopLevelMethod, _method, original.Syntax, _methodBodyFactory.CompilationState, _diagnostics)
480Return DirectCast(statement, BoundIfStatement).Condition.Syntax
482Return DirectCast(statement, BoundWhileStatement).Condition.Syntax
484Return DirectCast(statement, BoundForToStatement).InitialValue.Syntax
486Return DirectCast(statement, BoundForEachStatement).Collection.Syntax
488Return DirectCast(statement, BoundDoLoopStatement).ConditionOpt.Syntax
491Return If(usingStatement.ResourceExpressionOpt, DirectCast(usingStatement, BoundNode)).Syntax
493Return DirectCast(statement, BoundSyncLockStatement).LockExpression.Syntax
495Return DirectCast(statement, BoundSelectStatement).ExpressionStatement.Expression.Syntax
499Return initializer.Syntax
502Dim equalsValue = TryCast(statement.Syntax, EqualsValueSyntax)
506Dim asNew = TryCast(statement.Syntax, AsNewClauseSyntax)
512Return statement.Syntax
Lowering\Instrumentation\DebugInfoInjector.vb (51)
33Return New BoundSequencePoint(original.Syntax, rewritten)
98Return New BoundSequencePointExpression(original.Syntax, rewritten, rewritten.Type)
109Dim aggregateClause = DirectCast(original.Syntax.Parent.Parent, AggregateClauseSyntax)
135Debug.Assert(original.Syntax.Parent.IsKind(SyntaxKind.ExpressionRangeVariable))
137createSequencePoint = original.Syntax
138sequencePointSpan = TextSpan.FromBounds(original.Syntax.SpanStart, original.Syntax.Span.End)
154Return New BoundSequencePoint(DirectCast(original.Syntax, DoLoopBlockSyntax).LoopStatement, MyBase.InstrumentDoLoopEpilogue(original, epilogueOpt))
160Return New BoundSequencePoint(DirectCast(original.Syntax, SyncLockBlockSyntax).SyncLockStatement, MyBase.CreateSyncLockStatementPrologue(original))
164Return New BoundSequencePoint(original.LockExpression.Syntax, MyBase.InstrumentSyncLockObjectCapture(original, rewritten))
169Return New BoundSequencePoint(DirectCast(original.Syntax, SyncLockBlockSyntax).EndSyncLockStatement, MyBase.CreateSyncLockExitDueToExceptionEpilogue(original))
175Return New BoundSequencePoint(DirectCast(original.Syntax, SyncLockBlockSyntax).EndSyncLockStatement, MyBase.CreateSyncLockExitNormallyEpilogue(original))
179Return New BoundSequencePoint(DirectCast(original.Syntax, WhileBlockSyntax).EndWhileStatement, MyBase.InstrumentWhileEpilogue(original, epilogueOpt))
183Return New BoundSequencePoint(DirectCast(original.Syntax, WhileBlockSyntax).WhileStatement,
188Return New BoundSequencePoint(DirectCast(original.Syntax, DoLoopBlockSyntax).DoStatement,
200Select Case original.Syntax.Kind
202Dim asMultiline = DirectCast(original.Syntax, MultiLineIfBlockSyntax)
205Dim asElseIfBlock = DirectCast(original.Syntax, ElseIfBlockSyntax)
208Dim asSingleLine = DirectCast(original.Syntax, SingleLineIfStatementSyntax)
217Return New BoundSequencePoint(DirectCast(original.Syntax, MultiLineIfBlockSyntax).EndIfStatement,
225Select Case original.Syntax.Kind
227syntax = DirectCast(original.Syntax, MultiLineIfBlockSyntax).EndIfStatement
229syntax = DirectCast(original.Syntax.Parent, MultiLineIfBlockSyntax).EndIfStatement
239Return New BoundSequencePoint(DirectCast(original.AlternativeOpt.Syntax.Parent, MultiLineIfBlockSyntax).EndIfStatement,
246Select Case original.AlternativeOpt.Syntax.Kind
248prologue = New BoundSequencePoint(DirectCast(original.AlternativeOpt.Syntax, ElseBlockSyntax).ElseStatement, prologue)
250prologue = New BoundSequencePointWithSpan(original.AlternativeOpt.Syntax, prologue,
251DirectCast(original.AlternativeOpt.Syntax, SingleLineElseClauseSyntax).ElseKeyword.Span)
286rewrittenFilter = New BoundSequencePointExpression(DirectCast(original.Syntax, CatchBlockSyntax).CatchStatement,
297Return New BoundSequencePoint(original.ExpressionStatement.Syntax, MyBase.CreateSelectStatementPrologue(original))
306Return New BoundSequencePoint(original.CaseStatement.Syntax, MyBase.InstrumentCaseBlockConditionalGoto(original, condGoto))
310Return New BoundSequencePoint(original.CaseStatement.Syntax, MyBase.InstrumentCaseElseBlock(original, rewritten))
315Return New BoundSequencePoint(DirectCast(original.Syntax, SelectBlockSyntax).EndSelectStatement, MyBase.InstrumentSelectStatementEpilogue(original, epilogueOpt))
319Return New BoundSequencePoint(DirectCast(original.Syntax, CatchBlockSyntax).CatchStatement, MyBase.CreateCatchBlockPrologue(original))
323Return New BoundSequencePoint(DirectCast(original.FinallyBlockOpt.Syntax, FinallyBlockSyntax).FinallyStatement, MyBase.CreateFinallyBlockPrologue(original))
327Return New BoundSequencePoint(DirectCast(original.Syntax, TryBlockSyntax).TryStatement, MyBase.CreateTryBlockPrologue(original))
333Return New BoundStatementList(original.Syntax,
336New BoundSequencePoint(DirectCast(original.Syntax, TryBlockSyntax).EndTryStatement, Nothing)
345rewritten = MarkInitializerSequencePoint(rewritten, original.Syntax, symbolIndex)
353Return New BoundSequencePoint(DirectCast(original.Syntax, ForEachBlockSyntax).ForEachStatement,
359Dim nextStmt = DirectCast(original.Syntax, ForEachBlockSyntax).NextStatement
362epilogueOpt = New BoundSequencePoint(DirectCast(original.Syntax, ForEachBlockSyntax).NextStatement, epilogueOpt)
370Return New BoundSequencePoint(DirectCast(original.Syntax, ForBlockSyntax).ForStatement, MyBase.InstrumentForLoopInitialization(original, initialization))
375Dim nextStmt = DirectCast(original.Syntax, ForBlockSyntax).NextStatement
378increment = New BoundSequencePoint(DirectCast(original.Syntax, ForBlockSyntax).NextStatement, increment)
385Return MarkInitializerSequencePoint(MyBase.InstrumentLocalInitialization(original, rewritten), original.Syntax)
403syntaxForSequencePoint = localDeclaration.Syntax.Parent
406syntaxForSequencePoint = localDeclaration.Syntax
419Return New BoundSequencePoint(DirectCast(original.Syntax, UsingBlockSyntax).EndUsingStatement, MyBase.CreateUsingStatementDisposePrologue(original))
423Return New BoundSequencePoint(DirectCast(original.Syntax, WithBlockSyntax).WithStatement, MyBase.CreateWithStatementPrologue(original))
427Return New BoundSequencePoint(DirectCast(original.Syntax, WithBlockSyntax).EndWithStatement, MyBase.CreateWithStatementEpilogue(original))
Lowering\Instrumentation\DebugInfoInjector_SequencePoints.vb (7)
13Debug.Assert(containingCatchWithFilter.ExceptionFilterOpt.Syntax.Parent.IsKind(SyntaxKind.CatchFilterClause))
15Return AddConditionSequencePoint(condition, containingCatchWithFilter.ExceptionFilterOpt.Syntax.Parent, currentMethodOrLambda, local, shareLocal:=False)
20Return AddConditionSequencePoint(condition, containingStatement.Syntax, currentMethodOrLambda, local, shareLocal:=False)
29Return AddConditionSequencePoint(condition, containingStatement.Syntax, currentMethodOrLambda, lazyConditionalBranchLocal, shareLocal:=True)
41Dim conditionSyntax = condition.Syntax
88Dim asMethod = TryCast(node.Syntax, MethodBlockBaseSyntax)
109Dim asLambda = TryCast(node.Syntax, LambdaExpressionSyntax)
Lowering\LambdaRewriter\LambdaRewriter.vb (26)
273Dim syntax = scope.Syntax
330lambda.Syntax,
352Dim syntax = lambda.Syntax
416Dim frame As BoundExpression = FramePointer(origExpression.Syntax, proxy.ContainingType)
418Return New BoundFieldAccess(origExpression.Syntax,
529Dim syntaxNode As SyntaxNode = node.Syntax
698Return FramePointer(node.Syntax, TryCast(node.Type, NamedTypeSymbol))
704New BoundMyClassReference(node.Syntax, node.Type),
705FramePointer(node.Syntax, TryCast(_topLevelMethod.ContainingType, NamedTypeSymbol))))
711New BoundMyBaseReference(node.Syntax, node.Type),
712FramePointer(node.Syntax, TryCast(_topLevelMethod.ContainingType, NamedTypeSymbol))))
743Return New BoundBlock(node.Syntax,
847rewrittenExceptionSource.Syntax,
901Dim lambdaSyntax = lambda.Syntax
1113lambdaId = GetLambdaId(node.Syntax, closureKind, closureOrdinal, containerFrame?.RudeEdit)
1179receiver = FrameOfType(node.Syntax, constructedFrame)
1182receiver = New BoundFieldAccess(node.Syntax, Nothing, field, isLValue:=False, type:=field.Type)
1196node.Syntax,
1213InLoopOrLambda(node.Syntax, lambdaScope.Syntax)
1241Dim F = New SyntheticBoundNodeFactory(Me._topLevelMethod, Me._currentMethod, node.Syntax, CompilationState, Diagnostics)
1391Select Case node.Syntax.Kind
1393Me.Diagnostics.Add(ERRID.ERR_CannotGotoNonScopeBlocksWithClosure, node.Syntax.GetLocation(),
1394node.Syntax.ToString(), String.Empty, label.Name)
1396Me.Diagnostics.Add(ERRID.ERR_CannotGotoNonScopeBlocksWithClosure, node.Syntax.GetLocation(), "Goto ", label.Name, label.Name)
1400node = New BoundGotoStatement(node.Syntax, node.Label, node.LabelExpressionOpt, True)
Lowering\LocalRewriter\LocalRewriter.vb (23)
200sideEffects(i) = New BoundExpressionStatement(init.Syntax, init)
204Return New BoundBlock(node.Syntax, Nothing, locals.AsImmutable, sideEffects.AsImmutableOrNull)
301node.Syntax.Kind <> SyntaxKind.GroupAggregation AndAlso
302((node.Syntax.Kind = SyntaxKind.SimpleAsClause AndAlso node.Syntax.Parent.Kind = SyntaxKind.CollectionRangeVariable) OrElse
303TypeOf node.Syntax Is ExpressionSyntax)
381Return Me.Instrument AndAlso rewritten IsNot Nothing AndAlso (Not original.WasCompilerGenerated) AndAlso original.Syntax IsNot Nothing
387Return Me.Instrument AndAlso (Not original.WasCompilerGenerated) AndAlso original.Syntax IsNot Nothing
410Return New BoundStatementList(statement.Syntax, consequenceWithEnd.AsImmutableOrNull)
437Return New BoundStatementList(statement.Syntax, ImmutableArray.Create(prologueOpt, statement))
446block.Syntax,
655diagnostics.Add(New VBDiagnostic(diagnostic, node.Syntax.GetLocation()))
659Return diagnostics.Add(useSiteInfo, node.Syntax.GetLocation())
720Dim localAccess = New BoundLocal(value.Syntax, local, local.Type)
723value.Syntax,
762Dim syntax = value.Syntax
833Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
855rewritten = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, rewritten, canThrow:=True)
866Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
893tryGetResult = TryGetSpecialMember(Of MethodSymbol)(getTypeFromHandle, SpecialMember.System_Type__GetTypeFromHandle, node.Syntax)
895tryGetResult = TryGetWellknownMember(Of MethodSymbol)(getTypeFromHandle, WellKnownMember.System_Type__GetTypeFromHandle, node.Syntax)
899Return New BoundGetType(result.Syntax, result.SourceType, getTypeFromHandle:=Nothing, result.Type, hasErrors:=True)
903Return New BoundGetType(result.Syntax, result.SourceType, getTypeFromHandle, result.Type)
Lowering\LocalRewriter\LocalRewriter_AddRemoveHandler.vb (8)
51result = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, result, canThrow:=True)
83Dim syntax As SyntaxNode = node.Syntax
223_diagnostics.Add(errorInfo, node.EventAccess.Syntax.Location)
235expr = New BoundCall(node.Syntax,
244Return New BoundExpressionStatement(node.Syntax, expr)
275Dim factory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
296_emitModule.EmbeddedTypesManagerOpt.EmbedEventIfNeedTo([event].GetCciAdapter(), node.Syntax, _diagnostics.DiagnosticBag, isUsedForComAwareEventBinding:=True)
303Return New BoundBadExpression(node.Syntax,
Lowering\LocalRewriter\LocalRewriter_AnonymousTypeCreationExpression.vb (5)
44Dim boundLocal = New BoundLocal(newArguments(index).Syntax,
48newArguments(index) = New BoundAssignmentOperator(newArguments(index).Syntax, boundLocal, newArguments(index), True, local.Type)
55node.Syntax,
62node.Syntax,
82Return New BoundLocal(node.Syntax, local, False, Me.VisitType(local.Type))
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.vb (17)
103result = New BoundSequence(node.Syntax,
109result = New BoundSequence(node.Syntax,
219Dim field = New BoundFieldAccess(setNode.Syntax,
227Return New BoundAssignmentOperator(node.Syntax,
235Return RewriteReceiverArgumentsAndGenerateAccessorCall(node.Syntax,
285result = LateSet(node.Syntax,
296result = LateSet(node.Syntax,
311result = LateIndexSet(node.Syntax,
319result = New BoundSequence(node.Syntax,
451result = New BoundCall(expression.Syntax, getObjectValueMethod, Nothing, Nothing,
485Dim midCall = New BoundCall(node.Syntax,
490If(midResult.LengthOpt, New BoundLiteral(node.Syntax, ConstantValue.Create(&H7FFFFFFF), midResult.Start.Type)),
511Dim localRef = New BoundLocal(node.Syntax, temp, node.Type)
512Dim placeholder = New BoundCompoundAssignmentTargetPlaceholder(node.Syntax, node.Type)
514Return New BoundSequence(node.Syntax,
516ImmutableArray.Create(Of BoundExpression)(New BoundAssignmentOperator(node.Syntax,
520RewriteTrivialMidAssignment(New BoundAssignmentOperator(node.Syntax,
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (62)
53Dim tempAccess As New BoundLocal(node.Syntax, temp, True, temp.Type)
56New BoundAssignmentOperator(node.Syntax,
71Return New BoundSequence(node.Syntax,
74MakeTernaryConditionalExpression(node.Syntax,
200Return New BoundFieldAccess(boundCall.Syntax,
214Return New BoundFieldAccess(propertyAccess.Syntax,
485Dim compare = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
488result = New BoundBinaryOperator(node.Syntax,
491New BoundLiteral(node.Syntax, ConstantValue.Create(0I), memberSymbol.ReturnType),
524Dim compare = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
527result = New BoundBinaryOperator(node.Syntax,
530New BoundLiteral(node.Syntax, ConstantValue.Create(0I), memberSymbol.ReturnType),
588left = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
593right = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
603Dim op = New BoundBinaryOperator(node.Syntax, node.OperatorKind And BinaryOperatorKind.OpMask, left, right, False, left.Type)
606result = New BoundDirectCast(node.Syntax, op, ConversionKind.WideningValue, node.Type, Nothing)
636result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
664result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
697Dim compare = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
700New BoundLiteral(node.Syntax, ConstantValue.Create(compareText), memberSymbol.Parameters(2).Type)),
704result = New BoundBinaryOperator(node.Syntax, (node.OperatorKind And BinaryOperatorKind.OpMask),
705compare, New BoundLiteral(node.Syntax, ConstantValue.Create(0I), memberSymbol.ReturnType),
729result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
732New BoundLiteral(node.Syntax, ConstantValue.Create(compareText), memberSymbol.Parameters(2).Type)),
738result = New BoundConversion(node.Syntax, DirectCast(result, BoundExpression), ConversionKind.NarrowingBoolean, node.Checked, False, node.Type)
762result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
765New BoundLiteral(node.Syntax, ConstantValue.Create(If(compareText, 1I, 0I)), memberSymbol.Parameters(2).Type)),
787result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
914Dim operatorHasValue As BoundExpression = MakeBooleanBinaryExpression(node.Syntax,
923value = MakeTernaryConditionalExpression(node.Syntax,
926NullableNull(node.Syntax, node.Type))
930value = New BoundSequence(node.Syntax,
994booleanResult = MakeBooleanBinaryExpression(node.Syntax,
996MakeBooleanBinaryExpression(node.Syntax,
998New BoundUnaryOperator(node.Syntax,
1004MakeBooleanBinaryExpression(node.Syntax,
1012booleanResult = New BoundSequence(node.Syntax,
1038Dim result = New BoundLiteral(node.Syntax, ConstantValue.False, node.Type.GetNullableUnderlyingType())
1039Return New BoundSequence(node.Syntax, ImmutableArray(Of LocalSymbol).Empty,
1051Return New BoundNullableIsTrueOperator(operand.Syntax, operand, operand.Type.GetNullableUnderlyingType())
1094Dim syntax = notNullOperand.Syntax
1097Return MakeTernaryConditionalExpression(node.Syntax,
1117Dim syntax = notNullOperand.Syntax
1130MakeTernaryConditionalExpression(node.Syntax,
1137result = New BoundSequence(node.Syntax,
1194Dim ConstValue As BoundExpression = NullableOfBooleanValue(node.Syntax, isOr, nullableOfBoolean)
1197Dim value As BoundExpression = MakeTernaryConditionalExpression(node.Syntax,
1234value = MakeTernaryConditionalExpression(node.Syntax,
1237NullableNull(node.Syntax, nullableOfBoolean))
1261value = MakeTernaryConditionalExpression(node.Syntax,
1262MakeBooleanBinaryExpression(node.Syntax,
1267New BoundUnaryOperator(node.Syntax,
1272NullableOfBooleanValue(node.Syntax, isOr, nullableOfBoolean),
1296value = New BoundSequence(node.Syntax,
1325Return New BoundLiteral(operand.Syntax,
1332Return MakeSequence(operand, New BoundLiteral(operand.Syntax,
1353result = New BoundUnaryOperator(result.Syntax,
1394Dim whenHasNoValue = NullableNull(node.Syntax, resultType)
1442condition = MakeBooleanBinaryExpression(node.Syntax, BinaryOperatorKind.And, leftHasValueExpression, rightHasValueExpression)
1473Dim result As BoundExpression = MakeTernaryConditionalExpression(node.Syntax,
1480result = New BoundSequence(node.Syntax,
1502Return MakeBinaryExpression(originalOperator.Syntax,
Lowering\LocalRewriter\LocalRewriter_Call.vb (13)
25Return New BoundConversion(node.Syntax,
103Return New BoundSequence(node.Syntax,
109Return New BoundSequence(node.Syntax,
239Dim boundTemp = New BoundLocal(rewrittenArgument.Syntax, temp, temp.Type)
240Dim storeVal As BoundExpression = New BoundAssignmentOperator(rewrittenArgument.Syntax,
246Return New BoundSequence(rewrittenArgument.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(storeVal), boundTemp, rewrittenArgument.Type)
326Dim boundTemp = New BoundLocal(argument.Syntax, temp, temp.Type)
328Dim storeVal As BoundExpression = New BoundAssignmentOperator(argument.Syntax, boundTemp, inputValue, True, argument.Type)
336VisitAssignmentOperator(New BoundAssignmentOperator(argument.Syntax, secondUse, argument.OutConversion, False)),
346copyBack = LateSet(secondUse.Syntax,
357copyBack = LateSet(invocation.Syntax,
372copyBack = LateIndexSet(invocation.Syntax,
382Return New BoundSequence(argument.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(storeVal), boundTemp, argument.Type)
Lowering\LocalRewriter\LocalRewriter_ConditionalAccess.vb (9)
48Dim factory = New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
72newPlaceHolder = New BoundConditionalAccessReceiverPlaceholder(node.Placeholder.Syntax, newPlaceholderId, captureReceiver, receiverType)
74TryGetSpecialMember(Of MethodSymbol)(Nothing, SpecialMember.System_Nullable_T_get_HasValue, receiver.Syntax)
108newPlaceHolder = New BoundConditionalAccessReceiverPlaceholder(node.Placeholder.Syntax, newPlaceholderId, captureReceiver, node.Placeholder.Type)
134whenNull = If(node.Type.IsNullableType(), NullableNull(node.Syntax, node.Type), factory.Null(node.Type))
146result = New BoundLoweredConditionalAccess(node.Syntax, receiver, captureReceiver, newPlaceholderId, whenNotNull, whenNull, node.Type)
158result = New BoundSequence(node.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray(Of BoundExpression).Empty, Nothing, node.Type)
163result = New BoundSequence(node.Syntax, ImmutableArray.Create(temp), ImmutableArray.Create(assignment, result), Nothing, result.Type)
165result = New BoundSequence(node.Syntax, ImmutableArray.Create(temp), ImmutableArray.Create(assignment), result, result.Type)
Lowering\LocalRewriter\LocalRewriter_ConditionalExpressions.vb (9)
69placeholderSubstitute = New BoundLocal(rewrittenTestExpression.Syntax,
92New BoundAssignmentOperator(rewrittenTestExpression.Syntax,
93left:=New BoundLocal(rewrittenTestExpression.Syntax,
106New BoundTernaryConditionalExpression(node.Syntax,
117Return New BoundSequence(result.Syntax,
136rewrittenWhenTrue = New BoundConversion(rewrittenTestExpression.Syntax,
148New BoundConversion(rewrittenTestExpression.Syntax,
283Dim result As BoundExpression = MakeTernaryConditionalExpression(node.Syntax, condition, whenTrue, rewrittenRight)
287result = New BoundSequence(node.Syntax,
Lowering\LocalRewriter\LocalRewriter_Constant.vb (13)
28Return If(node.Kind = BoundKind.Literal, node, New BoundLiteral(node.Syntax, constantValue, node.Type, hasErrors:=constantValue.IsBad))
69Return New BoundFieldAccess(node.Syntax, Nothing, fieldSymbol, isLValue:=False, type:=fieldSymbol.Type)
94node.Syntax,
97{New BoundLiteral(node.Syntax, ConstantValue.Create(value), decCtorInt64.Parameters(0).Type)}),
123node.Syntax,
126New BoundLiteral(node.Syntax, ConstantValue.Create(UncheckedCInt(low)), decCtor.Parameters(0).Type),
127New BoundLiteral(node.Syntax, ConstantValue.Create(UncheckedCInt(mid)), decCtor.Parameters(1).Type),
128New BoundLiteral(node.Syntax, ConstantValue.Create(UncheckedCInt(high)), decCtor.Parameters(2).Type),
129New BoundLiteral(node.Syntax, ConstantValue.Create(isNegative), decCtor.Parameters(3).Type),
130New BoundLiteral(node.Syntax, ConstantValue.Create(scale), decCtor.Parameters(4).Type)),
156Return New BoundFieldAccess(node.Syntax, Nothing, dtMinValue, isLValue:=False, type:=dtMinValue.Type)
172node.Syntax,
175{New BoundLiteral(node.Syntax, ConstantValue.Create(dt.Ticks), dtCtorInt64.Parameters(0).Type)}),
Lowering\LocalRewriter\LocalRewriter_Conversion.vb (40)
168Dim syntax = node.Syntax
320Dim F As New SyntheticBoundNodeFactory(Me._topMethod, Me._currentMethodOrLambda, node.Syntax, Me._compilationState, Me._diagnostics)
340Dim convertedValue = New BoundDelegateCreationExpression(node.Syntax, F.Local(savedOriginalValue, False),
351Dim convertedValue = New BoundDelegateCreationExpression(node.Syntax, node.Operand,
406Return NullableNull(rewrittenOperand.Syntax, resultType)
442Return New BoundDirectCast(node.Syntax,
443MakeNullLiteral(rewrittenOperand.Syntax, resultType),
455Return New BoundDirectCast(node.Syntax,
492Return NullableNull(result.Syntax, resultType)
500NullableNull(result.Syntax, resultType))
548operand = RewriteConstant(New BoundLiteral(node.Syntax, constantResult, unwrappedResultType), constantResult)
554operand = MakeTupleConversion(node.Syntax, operand, unwrappedResultType, DirectCast(node.ExtendedInfoOpt, BoundConvertedTupleElements))
557operand = TransformRewrittenConversion(New BoundConversion(node.Syntax,
575operand = MakeTernaryConditionalExpression(node.Syntax,
578NullableNull(operand.Syntax, resultType))
582operand = New BoundSequence(operand.Syntax,
630Dim whenHasNoValue As BoundExpression = NullableNull(node.Syntax, resultType)
692Dim result As BoundExpression = MakeTernaryConditionalExpression(node.Syntax, condition, whenHasValue, whenHasNoValue)
696result = New BoundSequence(node.Syntax,
804operand = New BoundDirectCast(operand.Syntax,
811result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
829Return New BoundDirectCast(node.Syntax, node.Operand, node.ConversionKind, node.Type, Nothing)
879operand = New BoundDirectCast(operand.Syntax,
889result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
901result = New BoundConversion(node.Syntax, DirectCast(result, BoundExpression),
974operand = New BoundConversion(node.Syntax, operand, conv, node.Checked, node.ExplicitCastInCode,
982node.Syntax,
989result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
1034result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
1046result = New BoundConversion(node.Syntax, DirectCast(result, BoundExpression),
1113operand = New BoundConversion(node.Syntax, operand, conv, node.Checked, node.ExplicitCastInCode,
1121node.Syntax,
1128result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
1171result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
1183result = New BoundConversion(node.Syntax, DirectCast(result, BoundExpression),
1201Return New BoundConversion(node.Syntax, callOperand.Arguments(0), node.ConversionKind, node.Checked, node.ExplicitCastInCode, node.Type)
1220operand = New BoundConversion(node.Syntax, operand, ConversionKind.WideningNumeric, node.Checked, node.ExplicitCastInCode,
1224Dim callMathRound = New BoundCall(node.Syntax, mathRound, Nothing, Nothing,
1229result = New BoundConversion(node.Syntax, callMathRound, node.ConversionKind,
1339returnValue = New BoundDirectCast(node.Syntax, DirectCast(Visit(operand), BoundExpression), node.ConversionKind, typeTo, Nothing)
Lowering\LocalRewriter\LocalRewriter_DoLoop.vb (15)
38loopResumeLabel = RegisterUnstructuredExceptionHandlingNonThrowingResumeTarget(node.Syntax)
39conditionResumeTarget = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, canThrow:=True)
47afterBodyResumeLabel = RegisterUnstructuredExceptionHandlingNonThrowingResumeTarget(node.Syntax)
50Dim syntax = DirectCast(node.Syntax, DoLoopBlockSyntax)
66Dim syntax = DirectCast(node.Syntax, DoLoopBlockSyntax)
93conditionResumeTarget = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, canThrow:=True)
123ifConditionGotoStart = New BoundStatementList(ifConditionGotoStart.Syntax, conditionResumeTarget.Add(ifConditionGotoStart))
127Return New BoundStatementList(node.Syntax, ImmutableArray.Create(
137Return New BoundStatementList(node.Syntax, ImmutableArray.Create(
140New BoundLabelStatement(node.Syntax, node.ContinueLabel),
142New BoundLabelStatement(node.Syntax, node.ExitLabel)
150Dim syntax = DirectCast(node.Syntax, DoLoopBlockSyntax)
208New BoundLabelStatement(node.Syntax, node.ContinueLabel),
209New BoundGotoStatement(node.Syntax, startLabel, Nothing),
210New BoundLabelStatement(node.Syntax, node.ExitLabel)
Lowering\LocalRewriter\LocalRewriter_ForTo.vb (37)
52Dim blockSyntax = DirectCast(forStatement.Syntax, ForBlockSyntax)
97cacheAssignments.Add(New BoundAssignmentOperator(forStatement.OperatorsOpt.Syntax,
98New BoundLocal(forStatement.OperatorsOpt.Syntax,
128Dim literal As BoundExpression = New BoundLiteral(rewrittenStep.Syntax, ConstantValue.Default(literalUnderlyingType.SpecialType), stepValue.Type)
136New BoundBinaryOperator(rewrittenStep.Syntax,
145isUp = MakeBooleanBinaryExpression(isUp.Syntax,
154cacheAssignments.Add(New BoundAssignmentOperator(isUp.Syntax,
155New BoundLocal(isUp.Syntax,
167rewrittenInitialValue = New BoundSequence(rewrittenInitialValue.Syntax,
177rewrittenInitialValue.Syntax,
179rewrittenInitialValue.Syntax,
188rewrittenInitializer = New BoundStatementList(rewrittenInitializer.Syntax, loopResumeTarget.Add(rewrittenInitializer))
391Dim blockSyntax = DirectCast(forStatement.Syntax, ForBlockSyntax)
439rewrittenLimit.Syntax,
448rewrittenInitCondition = New BoundBadExpression(rewrittenLimit.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty,
494rewrittenLimit.Syntax,
503rewrittenLoopCondition = New BoundBadExpression(rewrittenLimit.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty,
579hasValues = MakeBooleanBinaryExpression(controlVariable.Syntax,
589New BoundBinaryOperator(stepValue.Syntax,
597newValue = MakeTernaryConditionalExpression(newValue.Syntax,
600NullableNull(controlVariable.Syntax, controlVariable.Type))
615stepValue.Syntax,
617stepValue.Syntax,
635Dim shiftConst = New BoundLiteral(value.Syntax, ConstantValue.Create(bits), int32Type)
637New BoundBinaryOperator(value.Syntax, BinaryOperatorKind.RightShift, [step], shiftConst, False, [step].Type))
639Return TransformRewrittenBinaryOperator(New BoundBinaryOperator(value.Syntax, BinaryOperatorKind.Xor, shiftedStep, value, False, value.Type))
665Dim result = MakeTernaryConditionalExpression(operatorsOpt.Syntax,
666New BoundLocal(operatorsOpt.Syntax,
684New BoundBinaryOperator(limit.Syntax,
706New BoundBinaryOperator(limit.Syntax,
721New BoundBinaryOperator(stepValue.Syntax,
735ctrlLimitHasValue = MakeBooleanBinaryExpression(controlVariable.Syntax,
747New BoundBinaryOperator(limit.Syntax,
755New BoundBinaryOperator(limit.Syntax,
762Dim isUp As BoundExpression = New BoundLocal(limit.Syntax,
767condition = MakeTernaryConditionalExpression(limit.Syntax,
778condition = MakeBooleanBinaryExpression(condition.Syntax,
Lowering\LocalRewriter\LocalRewriter_Label.vb (7)
21Not node.WasCompilerGenerated AndAlso node.Syntax.Kind = SyntaxKind.LabelStatement Then
22Dim labelSyntax = DirectCast(node.Syntax, LabelStatementSyntax)
29Dim trackLineNumber As BoundStatement = New BoundAssignmentOperator(node.Syntax,
30New BoundLocal(node.Syntax, _currentLineTemporary, _currentLineTemporary.Type),
31New BoundLiteral(node.Syntax, ConstantValue.Create(lineNumber), _currentLineTemporary.Type),
36trackLineNumber = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, trackLineNumber, canThrow:=False)
39statement = New BoundStatementList(node.Syntax, ImmutableArray.Create(statement, trackLineNumber))
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.vb (9)
47AddPlaceholderReplacement(placeholder, VisitExpressionNode(New BoundLocal(node.Syntax, localSymbol, localSymbol.Type)))
91result = New BoundExpressionStatement(rewrittenInitializer.Syntax, rewrittenInitializer)
95rewrittenInitializer.Syntax,
97rewrittenInitializer.Syntax,
100node.Syntax,
119result = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, result, canThrow:=True)
157Return New BoundFieldAccess(node.Syntax,
160New BoundMeReference(node.Syntax, _topMethod.ContainingType)),
171Dim syntax = rewrittenInitialization.Syntax
Lowering\LocalRewriter\LocalRewriter_NullableHelpers.vb (20)
16Dim ctor = GetNullableMethod(expr.Syntax, nullableType, SpecialMember.System_Nullable_T__ctor)
19Return New BoundObjectCreationExpression(expr.Syntax,
26Return New BoundBadExpression(expr.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty, ImmutableArray.Create(expr), nullableType, hasErrors:=True)
63hasValueExpr = New BoundLiteral(operand.Syntax, ConstantValue.True, Me.GetSpecialType(SpecialType.System_Boolean))
115Dim localAccess = New BoundLocal(operand.Syntax, temp, True, temp.Type)
116init = New BoundAssignmentOperator(operand.Syntax, localAccess, operand, True, operand.Type)
187New BoundLiteral(expr.Syntax, ConstantValue.False, expr.Type.GetNullableUnderlyingType()))
192Dim getValueOrDefaultMethod = GetNullableMethod(expr.Syntax, expr.Type, SpecialMember.System_Nullable_T_GetValueOrDefault, isOptional)
195Return New BoundCall(expr.Syntax,
206Return If(isOptional, Nothing, New BoundBadExpression(expr.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty, ImmutableArray.Create(expr), expr.Type.GetNullableUnderlyingType(), hasErrors:=True))
212Dim getValueOrDefaultWithDefaultValueMethod = GetNullableMethod(expr.Syntax, expr.Type, SpecialMember.System_Nullable_T_GetValueOrDefaultDefaultValue, isOptional:=True)
215Return New BoundCall(expr.Syntax,
241Dim getValueMethod As MethodSymbol = GetNullableMethod(expr.Syntax, expr.Type, SpecialMember.System_Nullable_T_get_Value)
244Return New BoundCall(expr.Syntax,
255Return New BoundBadExpression(expr.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty, ImmutableArray.Create(expr), expr.Type.GetNullableUnderlyingType(), hasErrors:=True)
269Dim hasValueMethod As MethodSymbol = GetNullableMethod(expr.Syntax, expr.Type, SpecialMember.System_Nullable_T_get_HasValue)
272Return New BoundCall(expr.Syntax,
283Return New BoundBadExpression(expr.Syntax, LookupResultKind.NotReferencable, ImmutableArray(Of Symbol).Empty, ImmutableArray.Create(expr),
312Return NullableNull(candidateNullExpression.Syntax, type)
512Return MakeSequence(second.Syntax, first, second)
Lowering\LocalRewriter\LocalRewriter_ObjectCreation.vb (10)
46result = New BoundDirectCast(node.Syntax, result, conv, node.Type, Nothing)
67Dim factory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
74newGuid = New BoundBadExpression(node.Syntax, LookupResultKind.NotCreatable, ImmutableArray(Of Symbol).Empty, ImmutableArray(Of BoundExpression).Empty, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
83callGetTypeFromCLSID = New BoundBadExpression(node.Syntax, LookupResultKind.OverloadResolutionFailure, ImmutableArray(Of Symbol).Empty, ImmutableArray(Of BoundExpression).Empty, ErrorTypeSymbol.UnknownResultType, hasErrors:=True)
92rewrittenObjectCreation = New BoundDirectCast(node.Syntax, factory.Call(Nothing, createInstance, callGetTypeFromCLSID), conversion, node.Type)
94rewrittenObjectCreation = New BoundBadExpression(node.Syntax, LookupResultKind.OverloadResolutionFailure, ImmutableArray(Of Symbol).Empty, ImmutableArray(Of BoundExpression).Empty, node.Type, hasErrors:=True)
133Dim syntax = node.Syntax
188Dim syntaxNode = node.Syntax
201newPlaceholder = New BoundWithLValueExpressionPlaceholder(node.PlaceholderOpt.Syntax, node.PlaceholderOpt.Type)
301Dim syntaxNode = node.Syntax
Lowering\LocalRewriter\LocalRewriter_Query.vb (9)
99Dim paramRef As New BoundParameter(node.Syntax,
111PopulateRangeVariableMapForAnonymousType(node.Syntax, paramRef.MakeCompilerGenerated(), nodeRangeVariables, firstUnmappedRangeVariable, rangeVariableMap, inExpressionLambda)
185Return New BoundReturnStatement(originalNode.Syntax,
199Dim lambdaBody = New BoundBlock(originalNode.Syntax,
204Dim result As BoundLambda = New BoundLambda(originalNode.Syntax,
239New BoundLocal(node.Syntax, groupLocal, False, groupLocal.Type))
241Dim result = New BoundSequence(node.Syntax,
244New BoundAssignmentOperator(node.Syntax,
245New BoundLocal(node.Syntax, groupLocal, True, groupLocal.Type),
Lowering\LocalRewriter\LocalRewriter_RedimClause.vb (9)
21Dim valueBeingAssigned As BoundExpression = New BoundArrayCreation(node.Syntax,
29If node.Preserve AndAlso TryGetWellknownMember(copyArrayUtilityMethod, WellKnownMember.Microsoft_VisualBasic_CompilerServices_Utils__CopyArray, node.Syntax) Then
54arrayValueAccess = New BoundDirectCast(node.Syntax, arrayValueAccess,
58valueBeingAssigned = New BoundDirectCast(node.Syntax, valueBeingAssigned,
63valueBeingAssigned = New BoundCall(node.Syntax,
70valueBeingAssigned = New BoundDirectCast(node.Syntax, valueBeingAssigned,
83Dim assignmentOperator As BoundExpression = New BoundAssignmentOperator(node.Syntax, assignmentTarget,
89assignmentOperator = New BoundSequence(node.Syntax,
102Return Visit(New BoundExpressionStatement(node.Syntax, assignmentOperator))
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (12)
59Return RewriteSelectStatement(node, node.Syntax, node.ExpressionStatement, node.ExprPlaceholderOpt, node.CaseBlocks, node.RecommendSwitchTable, node.ExitLabel)
185Dim privateImplClass = _emitModule.GetPrivateImplClass(node.Syntax, _diagnostics.DiagnosticBag)
208Dim selectExprStmtSyntax = selectExpressionStmt.Syntax
237Dim boundTemp = New BoundLocal(rewrittenSelectExpression.Syntax, tempLocal, selectExprType)
278rewrittenBody = AppendToBlock(rewrittenBody, RegisterUnstructuredExceptionHandlingNonThrowingResumeTarget(curCaseBlock.Syntax))
285Debug.Assert(curCaseBlock.Syntax.Kind = SyntaxKind.CaseElseBlock)
298Debug.Assert(curCaseBlock.Syntax.Kind = SyntaxKind.CaseBlock)
306syntaxNode:=curCaseBlock.Syntax,
325Debug.Assert(node.Syntax.Kind = SyntaxKind.CaseStatement)
328RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, canThrow:=True),
333Debug.Assert(node.Syntax.Kind = SyntaxKind.CaseElseStatement)
387rewrittenBody = AppendToBlock(rewrittenBody, RegisterUnstructuredExceptionHandlingNonThrowingResumeTarget(node.Syntax))
Lowering\LocalRewriter\LocalRewriter_Throw.vb (4)
23Debug.Assert(node.Syntax.Kind = SyntaxKind.ErrorStatement, "Must be an Error statement.")
24Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
29expressionOpt = New BoundCall(node.Syntax, createProjectError, Nothing, Nothing,
39rewritten = RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, rewritten, canThrow:=True)
Lowering\LocalRewriter\LocalRewriter_Try.vb (6)
22Dim rewritten As BoundStatement = RewriteTryStatement(node.Syntax, rewrittenTryBlock, rewrittenCatchBlocks, rewrittenFinally, node.ExitLabelOpt)
25Dim syntax = TryCast(node.Syntax, TryBlockSyntax)
117Dim syntax = TryCast(node.Syntax, FinallyBlockSyntax)
132Dim syntax = TryCast(node.Syntax, TryBlockSyntax)
149Dim syntax = TryCast(node.Syntax, CatchBlockSyntax)
173errorLineNumber = New BoundLocal(node.Syntax, _currentLineTemporary, isLValue:=False, type:=_currentLineTemporary.Type)
Lowering\LocalRewriter\LocalRewriter_UnaryOperators.vb (9)
32Return New BoundLiteral(node.Syntax, ConstantValue.False, node.Type)
131result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
155result = New BoundCall(node.Syntax, memberSymbol, Nothing, Nothing,
195Dim value As BoundExpression = MakeTernaryConditionalExpression(node.Syntax,
202value = New BoundSequence(node.Syntax,
241Dim whenHasNoValue = NullableNull(node.Syntax, resultType)
293Dim result As BoundExpression = MakeTernaryConditionalExpression(node.Syntax,
300result = New BoundSequence(node.Syntax,
319New BoundUnaryOperator(originalOperator.Syntax,
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (55)
41Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
143Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
171RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, False, statements)
191statements.Add(New BoundUnstructuredExceptionResumeSwitch(node.Syntax,
234statements.Add(New BoundUnstructuredExceptionOnErrorSwitch(node.Syntax,
257node.Syntax,
260node.Syntax,
264New BoundLocal(node.Syntax, _currentLineTemporary, isLValue:=False, type:=_currentLineTemporary.Type),
266New BoundUnstructuredExceptionHandlingCatchFilter(node.Syntax,
283statements.Add(nodeFactory.Throw(New BoundCall(node.Syntax, createProjectError, Nothing, Nothing,
296statements.Add(RewriteIfStatement(node.Syntax,
301New BoundCall(node.Syntax, clearProjectError, Nothing, Nothing, ImmutableArray(Of BoundExpression).Empty, Nothing, clearProjectError.ReturnType).ToStatement(),
326Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
331RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, False, statements)
338statements.Add(New BoundCall(node.Syntax, clearProjectError, Nothing, Nothing, ImmutableArray(Of BoundExpression).Empty, Nothing, clearProjectError.ReturnType).ToStatement)
374Dim rewritten As BoundStatement = New BoundStatementList(node.Syntax, statements.ToImmutableAndFree())
384Dim nodeFactory As New SyntheticBoundNodeFactory(_topMethod, _currentMethodOrLambda, node.Syntax, _compilationState, _diagnostics)
390RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, True, statements)
397statements.Add(New BoundCall(node.Syntax, clearProjectError, Nothing, Nothing, ImmutableArray(Of BoundExpression).Empty, Nothing, clearProjectError.ReturnType).ToStatement)
406statements.Add(RewriteIfStatement(node.Syntax,
411nodeFactory.Throw(New BoundCall(node.Syntax, createProjectError, Nothing, Nothing,
426RegisterUnstructuredExceptionHandlingResumeTarget(node.Syntax, False, statements)
440Dim rewritten As BoundStatement = New BoundStatementList(node.Syntax, statements.ToImmutableAndFree())
479If Not (TypeOf statement.Syntax Is StatementSyntax) Then
480If statement.Syntax.Parent IsNot Nothing AndAlso statement.Syntax.Parent.Kind = SyntaxKind.EraseStatement Then
481Debug.Assert(TypeOf statement.Syntax Is ExpressionSyntax)
483Select Case statement.Syntax.Kind
496statement.Syntax.Parent Is Nothing OrElse
497statement.Syntax.Parent.Kind <> SyntaxKind.VariableDeclarator OrElse
498statement.Syntax.Parent.Parent Is Nothing OrElse
499statement.Syntax.Parent.Parent.Kind <> SyntaxKind.LocalDeclarationStatement Then
505Not (TypeOf statement.Syntax.Parent Is ReDimStatementSyntax) Then
515If TypeOf statement.Syntax Is DeclarationStatementSyntax Then
521If Not (TypeOf statement.Syntax Is ExecutableStatementSyntax) Then
524Debug.Assert(statement.Syntax.Kind = SyntaxKind.ElseIfBlock AndAlso
525statement.Syntax.Parent IsNot Nothing AndAlso
526statement.Syntax.Parent.Kind = SyntaxKind.MultiLineIfBlock AndAlso
527_unstructuredExceptionHandlingResumableStatements.ContainsKey(statement.Syntax.Parent))
530Debug.Assert((statement.Syntax.Kind = SyntaxKind.CaseBlock OrElse statement.Syntax.Kind = SyntaxKind.CaseElseBlock) AndAlso
531statement.Syntax.Parent IsNot Nothing AndAlso
532statement.Syntax.Parent.Kind = SyntaxKind.SelectBlock AndAlso
533_unstructuredExceptionHandlingResumableStatements.ContainsKey(statement.Syntax.Parent))
536Debug.Assert(statement.Syntax.Kind = SyntaxKind.ModifiedIdentifier AndAlso
537statement.Syntax.Parent IsNot Nothing AndAlso
538statement.Syntax.Parent.Kind = SyntaxKind.VariableDeclarator AndAlso
539statement.Syntax.Parent.Parent IsNot Nothing AndAlso
540statement.Syntax.Parent.Parent.Kind = SyntaxKind.LocalDeclarationStatement)
543Debug.Assert((statement.Syntax.Kind = SyntaxKind.RedimClause AndAlso
544TypeOf statement.Syntax.Parent Is ReDimStatementSyntax) OrElse
545(TypeOf statement.Syntax Is ExpressionSyntax AndAlso
546TypeOf statement.Syntax.Parent Is EraseStatementSyntax))
549Debug.Assert(TypeOf statement.Syntax Is ExecutableStatementSyntax)
555_unstructuredExceptionHandlingResumableStatements.Add(statement.Syntax, statement)
Lowering\Rewriter.vb (2)
53CodeCoverageInstrumenter.TryCreate(method, body, New SyntheticBoundNodeFactory(method, method, body.Syntax, compilationState, diagnostics), diagnostics, debugDocumentProvider, Instrumenter.NoOp),
122Return New BoundBlock(body.Syntax, body.StatementListSyntax, body.Locals, body.Statements, hasErrors:=True)
Lowering\StateMachineRewriter\StateMachineRewriter.vb (7)
63Me.F = New SyntheticBoundNodeFactory(method, method, method.ContainingType, body.Syntax, compilationState, diagnostics)
379Return Binder.GetSpecialType(F.Compilation, type, Me.Body.Syntax, bag)
383Return Binder.GetWellKnownType(F.Compilation, type, Me.Body.Syntax, bag)
387Return Binder.GetSpecialTypeMember(F.Compilation.Assembly, member, Me.Body.Syntax, bag)
391Return Binder.GetWellKnownTypeMember(F.Compilation, member, Me.Body.Syntax, bag)
404Binder.ReportDiagnostic(bag, Body.Syntax, ERRID.ERR_NoGetProperty1, CustomSymbolDisplayFormatter.QualifiedName(symbol))
409Binder.ReportUseSite(bag, Body.Syntax, useSiteInfo)
Lowering\UseTwiceRewriter.vb (15)
90receiver = New Result(New BoundSequence(capture.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(capture), boundTemp, boundTemp.Type),
97receiver = New Result(New BoundSequence(capture.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(capture), boundTemp, boundTemp.Type),
149referToTemp = New BoundLocal(value.Syntax, temp, type)
151Dim capture = (New BoundAssignmentOperator(value.Syntax, referToTemp, value, suppressObjectClone:=True, type:=type)).MakeCompilerGenerated()
188Dim second = New BoundLiteral(value.Syntax, constantValue, value.Type)
256Dim first = New BoundReferenceAssignment(lvalue.Syntax,
257New BoundLocal(lvalue.Syntax, temp, temp.Type).MakeCompilerGenerated(),
260Dim second = New BoundLocal(lvalue.Syntax, temp, isLValue:=True, type:=lvalue.Type).MakeCompilerGenerated()
323receiver = New Result(New BoundSequence(capture.Syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(capture), boundTemp, boundTemp.Type),
344Dim complexReceiverFirst = New BoundComplexConditionalAccessReceiver(receiverOpt.Syntax,
346New BoundSequence(receiverOpt.Syntax, ImmutableArray(Of LocalSymbol).Empty,
352Dim complexReceiverSecond = New BoundComplexConditionalAccessReceiver(receiverOpt.Syntax,
357receiver = New Result(New BoundSequence(receiverOpt.Syntax, ImmutableArray(Of LocalSymbol).Empty,
446firstArgsArray(i) = New BoundLateBoundArgumentSupportingAssignmentWithCapture(boundArgument.Syntax,
450secondArgsArray(i) = New BoundLocal(boundArgument.Syntax, temp, isLValue:=False, type:=temp.Type)
Lowering\WithExpressionRewriter.vb (5)
98Dim boundLocal = New BoundLocal(value.Syntax, local, isLValue:=True, type:=type).MakeCompilerGenerated()
103value = New BoundLValueToRValueWrapper(value.Syntax, value, value.Type).MakeCompilerGenerated()
110value.Syntax, boundLocal, value, suppressObjectClone:=True, type:=type).MakeCompilerGenerated())
123Dim boundLocal = New BoundLocal(value.Syntax, local, isLValue:=True, type:=type).MakeCompilerGenerated()
127value.Syntax, boundLocal, value, True, type:=type).MakeCompilerGenerated())