Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trim away netframework targets in source-build #67384

Merged

Conversation

NikolaMilosavljevic
Copy link
Member

Backport of: #67355

### Summary of the changes

This is part of the source-build work to enable trimming of net4* targets. Parent repos (installer and sdk) have been updated, so the next step is to update dependencies, like roslyn.

Here's how this is consumed: dotnet/arcade#12785

Top-level tracking issue: dotnet/source-build#3014

This essentially just avoids building net4* TFMs when building Linux source build.

Fixes: #63746

@NikolaMilosavljevic NikolaMilosavljevic requested a review from a team as a code owner March 20, 2023 20:48
@ghost ghost added the Community The pull request was submitted by a contributor who is not a Microsoft employee. label Mar 20, 2023
@NikolaMilosavljevic
Copy link
Member Author

@mmitche @333fred

@333fred
Copy link
Member

333fred commented Mar 20, 2023

I think we need to understand why this needs to be backported. main corresponds to VS 17.6p3. This branch would effectively service 17.6p2, which I don't think is what we want.

@NikolaMilosavljevic
Copy link
Member Author

I think we need to understand why this needs to be backported. main corresponds to VS 17.6p3. This branch would effectively service 17.6p2, which I don't think is what we want.

.NET 8 picks up Roslyn from release/dev17.6-vs-deps - here's the latest update PR: dotnet/sdk#31267

cc @mmitche

@333fred
Copy link
Member

333fred commented Mar 20, 2023

Then we will likely have to wait for the next snap (when this branch will become P3). I don't think we can take this change in this branch currently.

@NikolaMilosavljevic
Copy link
Member Author

Then we will likely have to wait for the next snap (when this branch will become P3). I don't think we can take this change in this branch currently.

When is the next snap supposed to happen? We could wait up to a week I think, otherwise we'd need to think of alternatives.

@333fred
Copy link
Member

333fred commented Mar 20, 2023

I'm not sure. Hopefully someone from @dotnet/roslyn-infrastructure can answer.

@jaredpar
Copy link
Member

If this doesn't impact VS build we may be okay here.

@NikolaMilosavljevic
Copy link
Member Author

If this doesn't impact VS build we may be okay here.

Yeah, this change is for Linux and source-build only.

@NikolaMilosavljevic
Copy link
Member Author

@mmitche @333fred - this is a backport. The change affects Linux source-build only, it has no effect on Windows builds.

Can you take a look, approve and merge this?

@NikolaMilosavljevic
Copy link
Member Author

@allisonchou can this be merged manually? 3 CI legs are failing, and auto-merge will not get triggered.

All failing CI legs are running on Windows. My changes are Linux source-build specific and do not affect Windows build. Same CI legs are failing in other PRs, i.e. #67279

@allisonchou
Copy link
Contributor

@NikolaMilosavljevic I'm noticing a correctness build error that isn't present in the other PR you linked:

D:\a_work\1\s\artifacts\Bootstrap\tasks\net472\Microsoft.CSharp.Core.targets(80,5): error : Compiler request rejected [D:\a_work\1\s\src\VisualStudio\Core\Test.Next\Roslyn.VisualStudio.Next.UnitTests.csproj]
##[error]artifacts\Bootstrap\tasks\net472\Microsoft.CSharp.Core.targets(80,5): error : (NETCORE_ENGINEERING_TELEMETRY=Build) Compiler request rejected

Does this seem like it could be related to your changes?

@NikolaMilosavljevic
Copy link
Member Author

@NikolaMilosavljevic I'm noticing a correctness build error that isn't present in the other PR you linked:

D:\a_work\1\s\artifacts\Bootstrap\tasks\net472\Microsoft.CSharp.Core.targets(80,5): error : Compiler request rejected [D:\a_work\1\s\src\VisualStudio\Core\Test.Next\Roslyn.VisualStudio.Next.UnitTests.csproj]
##[error]artifacts\Bootstrap\tasks\net472\Microsoft.CSharp.Core.targets(80,5): error : (NETCORE_ENGINEERING_TELEMETRY=Build) Compiler request rejected

Does this seem like it could be related to your changes?

No. My changes are in eng/SourceBuild.props file which only ever gets used during Linux source-build. @mmitche do you agree?

@mmitche
Copy link
Member

mmitche commented Mar 23, 2023

@NikolaMilosavljevic Yep

@NikolaMilosavljevic
Copy link
Member Author

I'm going to close/reopen to force rebase and rerun of checks.

auto-merge was automatically disabled March 23, 2023 20:23

Pull request was closed

@333fred
Copy link
Member

333fred commented Mar 23, 2023

Note that you can do this with /azp run <ci name>, so /azp run roslyn-CI in this case.

@NikolaMilosavljevic
Copy link
Member Author

Note that you can do this with /azp run <ci name>, so /azp run roslyn-CI in this case.

Yeah, I've used those in the past. The goal was to rebase the change, to see if we pick up any potential fixes from the target branch.

I still don't understand why roslyn-CI (Correctness Correctness_Bootstrap_Build) is failing in this PR. PR has no impact on Windows build.

@333fred
Copy link
Member

333fred commented Mar 24, 2023

The goal was to rebase the change, to see if we pick up any potential fixes from the target branch.

The run commands do that too.

@RikkiGibson the logs are showing this assert, does it look familiar?

ID=VBCSCompiler TID=66: Debug.Assert failed with message: Fail: Stack Trace
   at Microsoft.CodeAnalysis.CommandLine.ExitingTraceListener.Exit(String originalMessage)
   at Microsoft.CodeAnalysis.CommandLine.ExitingTraceListener.WriteLine(String message)
   at System.Diagnostics.TraceInternal.Fail(String message)
   at System.Diagnostics.Debug.Assert(Boolean condition)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitUserDefinedConversion(BoundConversion conversionOpt, BoundExpression conversionOperand, Conversion conversion, TypeWithAnnotations targetTypeWithNullability, TypeWithState operandType, Boolean useLegacyWarnings, AssignmentKind assignmentKind, ParameterSymbol parameterOpt, Boolean reportTopLevelWarnings, Boolean reportRemainingWarnings, Location diagnosticLocation)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitConversion(BoundConversion conversionOpt, BoundExpression conversionOperand, Conversion conversion, TypeWithAnnotations targetTypeWithNullability, TypeWithState operandType, Boolean checkConversion, Boolean fromExplicitCast, Boolean useLegacyWarnings, AssignmentKind assignmentKind, ParameterSymbol parameterOpt, Boolean reportTopLevelWarnings, Boolean reportRemainingWarnings, Boolean extensionMethodThisArgument, Optional`1 stateForLambda, Boolean trackMembers, Location diagnosticLocationOpt, ArrayBuilder`1 previousArgumentConversionResults)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.ConvertConditionalOperandOrSwitchExpressionArmResult(BoundExpression node, BoundExpression operand, Conversion conversion, TypeWithAnnotations targetType, TypeWithState operandType, LocalState state, Boolean isReachable)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.<>c__DisplayClass206_0.<VisitConditionalOperatorCore>g__convertArms|0(BoundExpression node, BoundExpression originalConsequence, BoundExpression originalAlternative, LocalState consequenceState, LocalState alternativeState, TypeWithState consequenceRValue, TypeWithState alternativeRValue, BoundExpression consequence, Conversion consequenceConversion, Boolean consequenceEndReachable, BoundExpression alternative, Conversion alternativeConversion, Boolean alternativeEndReachable, TypeWithAnnotations resultTypeWithAnnotations, Boolean wasTargetTyped)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitConditionalOperatorCore(BoundExpression node, Boolean isRef, BoundExpression condition, BoundExpression originalConsequence, BoundExpression originalAlternative)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitConditionalOperator(BoundConditionalOperator node)
   at Microsoft.CodeAnalysis.CSharp.BoundConditionalOperator.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.VisitExpressionWithStackGuard(Int32& recursionDepth, BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalue(BoundExpression node, Boolean isKnownToBeAnLvalue)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalueWithState(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitOptionalImplicitConversion(BoundExpression expr, TypeWithAnnotations targetTypeOpt, Boolean useLegacyWarnings, Boolean trackMembers, AssignmentKind assignmentKind, Boolean delayCompletionForTargetType)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitOptionalImplicitConversion(BoundExpression expr, TypeWithAnnotations targetTypeOpt, Boolean useLegacyWarnings, Boolean trackMembers, AssignmentKind assignmentKind)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitReturnStatement(BoundReturnStatement node)
   at Microsoft.CodeAnalysis.CSharp.BoundReturnStatement.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitStatement(BoundStatement statement)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitStatement(BoundStatement statement)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitStatementsWithLocalFunctions(BoundBlock block)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitBlock(BoundBlock node)
   at Microsoft.CodeAnalysis.CSharp.BoundBlock.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.AnalyzeLocalFunctionOrLambda(IBoundLambdaOrFunction lambdaOrFunction, MethodSymbol lambdaOrFunctionSymbol, LocalState state, MethodSymbol delegateInvokeMethod, Boolean useDelegateInvokeParameterTypes, Boolean useDelegateInvokeReturnType)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitLambda(BoundLambda node, NamedTypeSymbol delegateTypeOpt, Optional`1 initialState)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitConversion(BoundConversion conversionOpt, BoundExpression conversionOperand, Conversion conversion, TypeWithAnnotations targetTypeWithNullability, TypeWithState operandType, Boolean checkConversion, Boolean fromExplicitCast, Boolean useLegacyWarnings, AssignmentKind assignmentKind, ParameterSymbol parameterOpt, Boolean reportTopLevelWarnings, Boolean reportRemainingWarnings, Boolean extensionMethodThisArgument, Optional`1 stateForLambda, Boolean trackMembers, Location diagnosticLocationOpt, ArrayBuilder`1 previousArgumentConversionResults)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArgumentConversionAndInboundAssignmentsAndPreConditions(BoundConversion conversionOpt, BoundExpression argumentNoConversion, Conversion conversion, RefKind refKind, ParameterSymbol parameter, TypeWithAnnotations parameterType, FlowAnalysisAnnotations parameterAnnotations, VisitArgumentResult result, ArrayBuilder`1 conversionResultsBuilder, Boolean extensionMethodThisArgument)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.<VisitArguments>g__visitArguments|231_0(BoundNode node, ImmutableArray`1 arguments, ImmutableArray`1 argumentsNoConversions, ImmutableArray`1 conversions, ImmutableArray`1 results, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parametersOpt, ImmutableArray`1 argsToParamsOpt, BitVector defaultArguments, Boolean expanded, Boolean invokedAsExtensionMethod, MethodSymbol method, Boolean delayCompletionForTargetMember)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArguments(BoundNode node, ImmutableArray`1 arguments, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parametersOpt, ImmutableArray`1 argsToParamsOpt, BitVector defaultArguments, Boolean expanded, Boolean invokedAsExtensionMethod, MethodSymbol method, Boolean delayCompletionForTargetMember)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArguments(BoundNode node, ImmutableArray`1 arguments, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parametersOpt, ImmutableArray`1 argsToParamsOpt, BitVector defaultArguments, Boolean expanded, Boolean invokedAsExtensionMethod, MethodSymbol method)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.ReinferMethodAndVisitArguments(BoundCall node, TypeWithState receiverType)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitCall(BoundCall node)
   at Microsoft.CodeAnalysis.CSharp.BoundCall.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.VisitExpressionWithStackGuard(Int32& recursionDepth, BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalue(BoundExpression node, Boolean isKnownToBeAnLvalue)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalueWithState(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitMemberAccess(BoundExpression node, BoundExpression receiverOpt, Symbol member)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitPropertyAccess(BoundPropertyAccess node)
   at Microsoft.CodeAnalysis.CSharp.BoundPropertyAccess.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.VisitExpressionWithStackGuard(Int32& recursionDepth, BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalue(BoundExpression node, Boolean isKnownToBeAnLvalue)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArgumentEvaluate(BoundExpression argument, RefKind refKind, FlowAnalysisAnnotations annotations)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArgumentsEvaluate(ImmutableArray`1 arguments, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parameterAnnotationsOpt, BitVector defaultArguments)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArguments(BoundNode node, ImmutableArray`1 arguments, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parametersOpt, ImmutableArray`1 argsToParamsOpt, BitVector defaultArguments, Boolean expanded, Boolean invokedAsExtensionMethod, MethodSymbol method, Boolean delayCompletionForTargetMember)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitArguments(BoundNode node, ImmutableArray`1 arguments, ImmutableArray`1 refKindsOpt, ImmutableArray`1 parametersOpt, ImmutableArray`1 argsToParamsOpt, BitVector defaultArguments, Boolean expanded, Boolean invokedAsExtensionMethod, MethodSymbol method)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.ReinferMethodAndVisitArguments(BoundCall node, TypeWithState receiverType)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitCall(BoundCall node)
   at Microsoft.CodeAnalysis.CSharp.BoundCall.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitExpressionWithoutStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.VisitExpressionWithStackGuard(BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.VisitExpressionWithStackGuard(Int32& recursionDepth, BoundExpression node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitRvalue(BoundExpression node, Boolean isKnownToBeAnLvalue)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitExpressionStatement(BoundExpressionStatement node)
   at Microsoft.CodeAnalysis.CSharp.BoundExpressionStatement.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitStatement(BoundStatement statement)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitStatement(BoundStatement statement)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitStatementsWithLocalFunctions(BoundBlock block)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.VisitBlock(BoundBlock node)
   at Microsoft.CodeAnalysis.CSharp.BoundBlock.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitMethodBodies(BoundBlock blockBody, BoundBlock expressionBody)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
   at Microsoft.CodeAnalysis.CSharp.BoundNonConstructorMethodBody.Accept(BoundTreeVisitor visitor)
   at Microsoft.CodeAnalysis.CSharp.BoundTreeVisitor.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitWithStackGuard(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.VisitAlways(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node, Boolean expressionIsRead)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Visit(BoundNode node)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Scan(Boolean& badRegion)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Scan(Boolean& badRegion)
   at Microsoft.CodeAnalysis.CSharp.AbstractFlowPass`2.Analyze(Boolean& badRegion, Optional`1 initialState)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Analyze(NullableWalker walker, Symbol symbol, DiagnosticBag diagnostics, Optional`1 initialState, Builder snapshotBuilderOpt, Boolean requiresAnalysis)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.Analyze(CSharpCompilation compilation, Symbol symbol, BoundNode node, Binder binder, Conversions conversions, DiagnosticBag diagnostics, Boolean useConstructorExitWarnings, Boolean useDelegateInvokeParameterTypes, Boolean useDelegateInvokeReturnType, MethodSymbol delegateInvokeMethodOpt, VariableState initialState, MethodSymbol baseOrThisInitializer, Builder analyzedNullabilityMapOpt, Builder snapshotBuilderOpt, ArrayBuilder`1 returnTypesOpt, Boolean getFinalNullableState, VariableState& finalNullableState, Boolean requiresAnalysis)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.AnalyzeWithSemanticInfo(CSharpCompilation compilation, Symbol symbol, BoundNode node, Binder binder, VariableState initialState, DiagnosticBag diagnostics, Boolean createSnapshots, Boolean requiresAnalysis)
   at Microsoft.CodeAnalysis.CSharp.NullableWalker.AnalyzeAndRewrite(CSharpCompilation compilation, Symbol symbol, BoundNode node, Binder binder, VariableState initialState, DiagnosticBag diagnostics, Boolean createSnapshots, SnapshotManager& snapshotManager, ImmutableDictionary`2& remappedSymbols)
   at Microsoft.CodeAnalysis.CSharp.MethodCompiler.BindMethodBody(MethodSymbol method, TypeCompilationState compilationState, BindingDiagnosticBag diagnostics, Boolean includeInitializersInBody, BoundNode initializersBody, Boolean reportNullableDiagnostics, ImportChain& importChain, Boolean& originalBodyNested, Boolean& prependedDefaultValueTypeConstructorInitializer, InitialState& forSemanticModel)
   at Microsoft.CodeAnalysis.CSharp.MethodCompiler.CompileMethod(MethodSymbol methodSymbol, Int32 methodOrdinal, ProcessedFieldInitializers& processedInitializers, SynthesizedSubmissionFields previousSubmissionFields, TypeCompilationState compilationState)
   at Microsoft.CodeAnalysis.CSharp.MethodCompiler.CompileNamedType(NamedTypeSymbol containingType)
   at Microsoft.CodeAnalysis.CSharp.MethodCompiler.<>c__DisplayClass25_0.<CompileNamedTypeAsync>b__0()
   at Roslyn.Utilities.UICultureUtilities.<>c__DisplayClass5_0.<WithCurrentUICulture>b__0()
   at System.Threading.Tasks.Task.Execute()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
   at System.Threading.ThreadPoolWorkQueue.Dispatch()

@NikolaMilosavljevic
Copy link
Member Author

The goal was to rebase the change, to see if we pick up any potential fixes from the target branch.

The run commands do that too.

@RikkiGibson the logs are showing this assert, does it look familiar?

@RikkiGibson @333fred @mmitche what are the next steps here? Changes in dotnet/runtime will flow to dotnet/sdk soon and we'll start seeing issues in source-build unless we get these changes merged so that they can flow to dotnet/sdk.

@RikkiGibson
Copy link
Contributor

Follow-up to #67384 (comment)

I compared this with recent builds on the branch: https://dev.azure.com/dnceng-public/public/_build?definitionId=95&_a=summary&branchFilter=14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360%2C14360

It looks like both the rolling builds of release/dev17.6 still retained in our logs have the same failure. I think we should file an issue for this (unless we already have one @Cosifne @allisonchou?)

I recommend force merging this PR.

@333fred 333fred merged commit e7aa15f into dotnet:release/dev17.6 Mar 27, 2023
@333fred
Copy link
Member

333fred commented Mar 27, 2023

I recommend force merging this PR.

Done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Infrastructure Community The pull request was submitted by a contributor who is not a Microsoft employee.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants